【发布时间】:2015-08-23 04:57:59
【问题描述】:
我必须说,我是使用 Boost 库的新手,但我已经在一些项目中使用过它们,并且对它们非常满意。 现在,我想在我的一个文件夹中获取具有特定扩展名的所有文件,所以,在网上查找,我发现了这个>How to get list of files with a specific extension in a given folder 我在 Windows 7 上使用代码块。
我已经完成了所有看起来需要的事情,当我尝试编译它时,我得到了三个错误>
C:\boost_1_58_0\boost\system\error_code.hpp|221|未定义引用
boost::system::generic_category()'| C:\boost_1_58_0\boost\system\error_code.hpp|222|undefined reference toboost::system::generic_category()'| C:\boost_1_58_0\boost\system\error_code.hpp|223|未定义引用 `boost::system::system_category()'|
我在网上查了一下,发现除了指向我的“搜索目录(编译器和链接器)来加速安装外,我还需要直接指向它以某种方式提升系统库。
我在我的链接器设置中尝试了 -lboost_system,但这并没有解决问题。
我在这里几乎不是专家,所以我问你们是否可以帮助我。
有人有什么想法吗?
【问题讨论】:
-
确保使用 Boost 库 (
-L path/to/boost/libs) 的路径调用链接步骤。我不熟悉 CodeBlocks,所以你必须弄清楚如何让它显示链接器调用命令。当然,还要确保您尝试链接到的库 (boost_system) 确实存在于指定位置。 -
您好,我目前有> -LC:\boost_1_58_0\libs\system 但这没有帮助。那个文件夹确实存在。
-
好的,但是库
libboost_system本身呢?我愿意打赌上面的路径是错误的。该库很可能位于C:\boost_1_58_0\stage\lib。在 Boost 树中搜索库文件,如果不存在,则需要构建 Boost。 -
s29.postimg.org/mk9g08o47/Capture.png 这是搜索给我的。你能告诉我链接器设置中包含什么吗?我猜一个用于调试,一个用于发布构建?
-
这些是这些库的 Visual Studio 版本,注意到名称中的 vc110 了吗?您需要使用 gcc 构建 Boost。
标签: c++ gcc boost codeblocks