Boost BCP是否也复制了所需的LIB文件?

时间:2013-08-26 19:49:40

标签: boost libs

对于长期提升用户来说,这可能是一个明智的选择,但我只是在努力提升。

我构建了完整的boost分配和BCP,只提取我需要放入VisualStudio C ++项目中的部分。

我发现当我调用bcp时,它会将源树复制到目标。它不会复制所需的已编译的lib文件(对于那些需要它的模块)。

所以当我构建我的项目并包含

#include "boost/program_options.hpp"

例如,我收到链接器错误:

  

*错误1错误LNK1104:无法打开文件'libboost_program_options-vc100-mt-sgd-1_54.lib'*

所以我的问题是: BCP是否还应该根据需要复制已编译的LIB文件?

是BOOST用户自己手动复制那些编译过的库文件的标准程序吗?

1 个答案:

答案 0 :(得分:1)

我最近开始尝试使用BCP。似乎任何需要库的boost模块都不会被复制,而是需要使用bjam构建它们。

例如,当您在代码上运行bcp时,它将输出一些“INFO”语句,如下所示:
INFO: tracking source dependencies of library date_time due to presence of BOOST_DATE_TIME_DECL...
INFO: tracking source dependencies of library smart_ptr due to presence of "void sp_scalar_constructor_hook... 请注意,除了生成的'boost'文件夹包含一堆复制的boost头文件外,还会有一个'libs'文件夹以及Jam文件(Jamroot,Jamfile.v2等)。 我想你需要使用Jamfiles cd到目录并使用bjam来构建所需的库。

也许这个答案会有所帮助: Building a subset of boost in windows