建立提升BCP

Nav*_*K N 48 c++ boost

我试图在最近两个小时内构建Boost C++库并且没有任何结果就停止了.由于我是C++的新手,我无法正确构建.如何使用Visual Studio 2008正确构建它?

我需要使用BCP工具来提取库的子集.所以我需要先建立BCP,对吧?这该怎么做?当我尝试构建它时,我收到以下错误

致命错误LNK1104:无法打开文件'libboost_filesystem-vc90-mt-gd-1_37.lib'.

我在哪里可以获得上面给出的库文件?

Rod*_*ick 119

当前版本的Boost(1.50.0)使用Boost.Build.构建bcp的新工作流程如下:

从根Boost目录中,键入:

bootstrap.bat
Run Code Online (Sandbox Code Playgroud)

然后,一旦构建了Boost.Build,键入:

b2 tools/bcp
Run Code Online (Sandbox Code Playgroud)

  • 得到的二进制文件位于dist/bin/bcp. (40认同)
  • 我已经完成了 3 个步骤:`> bootstrap.bat > .\b2 > .\b2 tools/bcp` 然后我就可以使用它了:C:\Users\pedro\dev-VS2008\boost_1_59_0>dist\bin\ bcp boost\tokenizer.hpp C:\Users\pedro\dev-VS2008\MyProject\boost_1_59_0 (3认同)

viv*_*dos 35

首先,您需要在命令shell中具有正确的PATH,INCLUDE和LIB环境变量.为此,vcvarsall.bat使用参数调用文件" "(或类似):

vcvarsall.bat x86
Run Code Online (Sandbox Code Playgroud)

接下来你必须构建bjam(你也可以从Boost页面下载它,但它几乎一样快).转到tools\jam\srcBoost中的文件夹并键入:

build.bat
Run Code Online (Sandbox Code Playgroud)

它应该生成一个bin.ntx86包含bjam.exe 的子文件夹.为方便起见,将其复制到Boost主文件夹.接下来,您可以构建bcp.进入tools\bcp文件夹并输入:

..\..\bjam.exe --toolset=msvc
Run Code Online (Sandbox Code Playgroud)

回到Boost主文件夹,然后您可以构建您想要的任何库:

bjam toolset=msvc –-with-{library}
Run Code Online (Sandbox Code Playgroud)

哪个{library}是要构建的库.所有可构建的库都可以显示为:

bjam –-show-libraries
Run Code Online (Sandbox Code Playgroud)

还有更多的bjam构建参数.您可以指定的一些具有关键字的参数是:

variant=debug|release
link=shared|static
threading=multi|single
Run Code Online (Sandbox Code Playgroud)

一个例子是:

bjam toolset=msvc –-with-filesystem threading=multi variant=debug stage
Run Code Online (Sandbox Code Playgroud)

有关更多信息,请访问Boost文档页面.

编辑:更新链接以指向最新的Boost文档

编辑:更正选项--with- {library}和--show-libraries

  • 缺少工具/卡纸的解决方法(至少1.48); 运行bootstrap.bat,它会将bjam复制到主boost文件夹中. (2认同)