繁体   English   中英

在Windows 10 VS2015上构建Boost-无法打开* .lib

[英]Build Boost on Windows 10 VS2015 - Cannot Open *.lib

我还不是非常了解C ++,并且一直在寻找创建一个小型项目以更好地适应该语言等。

由于我想做的事情涉及许多磁盘扫描和文件操作,因此我决定查看Boost库,尤其是文件系统库。

我一直在通过本指南进行工作:

http://www.boost.org/doc/libs/1_61_0/more/getting_started/windows.html

我正在使用Windows 10上的Microsoft工具,包括Visual Studio 2015。

我以zip格式下载boost并提取到:

G:\C++\boost\boost_1_61_0

然后运行描述的命令:

> bootstrap

> .\b2

> b2 --build-dir="G:\C++\boost-build" --build-type=complete msvc stage

当此最后一个命令完成底部的小报告消息时,请阅读:

...failed updating 224 targets...
...skipped 20 targets...
...updated 3804 targets...

我不知道这是否表示问题。

到目前为止,一切似乎都行得通,直到我开始尝试使用二进制文件为止(本指南中的第6步)。

我添加了步骤6.1中描述的其他lib目录。 尽管我拥有的lib目录位于stage目录中,但不是指南中所述的boost root。

我将此添加到“其他包含目录”中,因此该字符串现在如下所示:

G:\C++\boost\boost_1_61_0;G:\C++\boost\boost_1_61_0\stage\lib

重新编译时,如果删除第一个条目,则会出现此错误:

C1083 Cannot open include file: 'boost/regex.hpp': No such file or directory

当我用两个路径集编译时,我得到:

LNK1104 cannot open file 'libboost_regex-vc140-mt-1_61.lib'

我已经确认名为的文件位于以下目录中:

G:\C++\boost\boost_1_61_0\stage\lib

现在很困惑。 我在这里做错了什么?

有更好的指南可循吗? 该指南似乎确实在谈论VS2003和2005。

任何建议都很好。

顾名思义,“其他包含目录”用于您要#include的文件,在您的情况下为G:\\C++\\boost\\boost_1_61_0目录。

链接器不会在“其他包含目录”中搜索库,因为这些库不打算用于库,因此找不到增强库。

链接器在“其他库目录”中搜索所需的库,因此您应在其中放置库的路径,即G:\\C++\\boost\\boost_1_61_0\\stage\\lib

该属性位于Linker -> General

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM