我正在尝试使用Boost库配置Code :: Blocks(在Windows上运行,使用MinGW)。我已经构建了库并已将所有内容安装到C:\ Program Files \ boost_1_47_0。
在Code :: Blocks本身,我创建了一个全局变量,它使用两个内置字段“base”和“include”,它们都指向boost安装路径。
我还修改了构建选项下的链接器设置,并添加了一个链接库'$(#boost.lib)'。为了测试提升,我已经将#include放在我的项目中,而根本没有使用include。但是,该项目没有构建(它当然是在放入#include之前构建的)并且我得到了一个源自“ld.exe”的构建错误,其中写着“找不到-l-lstdc ++”。有谁知道我做错了什么?
干杯。
答案 0 :(得分:0)
您收到的错误表示无法找到-l-lstdc++
;链接库设置出错。
如果您尝试在命令行上编译一个简单的C ++(非Boost)应用程序并输入:
g++ main.cpp -o main.o -l-lstdc++
您将收到与您在Code :: Blocks中看到的相同的错误:
/usr/bin/ld: cannot find -l-lstdc++
这是因为您的图书馆名称被指定为-lstdc++
,而stdc++
只有-l
。-l
。 (-l
是一个标志,告诉编译器下一个单词是库的名称。)
检查您的链接库设置是否有额外的$(#boost.lib)
,或尝试将{{1}}替换为Boost库的实际路径。