我一直在尝试使用Code :: Blocks来使用boost库,但是遇到了一些麻烦。
当我第一次尝试获得提升时,我所做的就是下载最新的zip文件并将其解压缩到CodeBlocks文件夹中。然后我设置编译器设置以查看boost文件夹。这允许我编译,但不能链接。然后我读了BoostWindowsQuickReference。我删除了与机器相关的所有相关内容,并开始新鲜。
我一步一步地按照说明进行操作,并且唯一没有完全按照说明进行说明的是,其中包含include \ boost的install-proper文件夹位于C:而不是我的CodeBlocks文件夹中。所以我只是将它复制(只是因为某种原因它需要在那里)到CodeBlocks文件夹,我觉得很奇怪,因为我已经有了一个boost_1_40_0文件夹来下载.zip。
然后我尝试编译一个程序,它提出了完全相同的错误。然后我意识到我忘了放入链接库(例如:boost_regex-mgw44-mt-1_40.lib)。现在我得到
错误:ld.exe ||找不到-lboost_regex-mgw44-mt-1_40.lib |
我有几个问题:
如果需要澄清,我很乐意这样做。感谢。
编辑:现在我无法编译常规程序。所以我刚刚重新开始。
答案 0 :(得分:0)
1,应该是-lboost_regex-mgw44-mt-1_40
2,阅读文档,大多数boost库不需要链接库
3,4,你应该自己编译,或者尝试nuwen的MinGW(我安装了它并且工作正常)答案 1 :(得分:0)
BoostPro具有可用于Boost库的Windows二进制文件。如果您只下载Boost源,则必须编译它,如果您使用的是任何非标头库(例如boost regex)。 BoostPro二进制文件允许您链接到这些,而无需构建任何内容。
答案 2 :(得分:0)
在Windows上,“安装”Boost的位置并不重要。只需获取.7z,使用bjam.exe进行编译并将其传递给您需要的选项。它将创建一个名为“bin.v2”的文件夹,并将生成的库放在那里。在Code :: Blocks中,您需要做的就是编辑项目选项并将搜索路径指向boost_1_40_0 \ boost并手动输入要链接的库(来自bin.v2的库)。它应该只是工作。
不要使用预编译的Boost库。