找不到 boost 库

Posted

技术标签:

【中文标题】找不到 boost 库【英文标题】:boost library can not be found 【发布时间】:2011-07-19 13:32:11 【问题描述】:

我在 winXP SP3 上使用 MinGW 编译了 boost 1.47 版。 我在我的 make 文件的链接器变量中包含了库的路径 (C:\boost\boost_1_47_0)。在命令提示符窗口中运行“make”时,我收到以下错误消息:

"c:/mingw/bin/../lib/gcc/mingw32/4.5.2/../../../../mingw32/bin/ld.exe: 找不到C:\boost \boost_1_47_0\stage\lib:权限被拒绝 collect2: ld 返回 1 个退出状态 make: * [main] 错误 1"

可能是什么问题,我该如何解决?提前致谢。

【问题讨论】:

C:\boost\boost_1_47_0\stage\lib 存在吗? 您可以尝试在管理员模式下运行命令行吗? @CharlesB: 是 C:\boost\boost_1_47_0\stage\lib 存在并且有文件(带有 .dll、.dll.a 和 .a 扩展名) 更改C:\boost\boost_1_47_0\的权限 @Gasim:我找不到更改 winXP SP3 权限的方法。我试过“右键单击然后属性”,但出现的对话框似乎与权限无关。 【参考方案1】:

我已经制定了解决方案。可能问题出在我身上,请注意“make”。下面是正在运行的 make 文件。

# global variables
CC = g++
SRC = main.cpp
BOOST = C:\boost\boost_1_47_0
BOOSTLIB = C:\boost\boost_1_47_0\stage\lib\libboost_regex-mgw45-1_47.a

# linking
main : main.o
    $(CC) main.o $(BOOSTLIB) -o main 

# compile
main.o : main.cpp
    $(CC) -c -I$(BOOST) $(SRC) -o main.o

# clean
clean :
    rm main.o main

现在可以了。我不太确定,但可能规则的顺序不正确。感谢大家的帮助。

【讨论】:

以上是关于找不到 boost 库的主要内容,如果未能解决你的问题,请参考以下文章

使用外部库找不到入口点错误

Ubuntu 安装MySQL报共享库找不到

c++文件中jni库找不到报红

.netcore类库找不到main函数

NVIDIA Jetson Xavier NX相关组件库安装

NVIDIA Jetson Xavier NX相关组件库安装