下载:
下载后解压如下

编译:

用VS自带的控制台执行bootstrap.bat,只生成了一个b2.exe,那就用这个
注意:bat文件打开如下

2015对应14.0,如果是2017/2019 用14.1(vs2019 可以支持boost c++ library 针对msvc-14.1的编译选项)
编译出来如下:


分别对应:lib(静态库)boost_atomic(库名)-vc140(编译器)-mt(多线程)-s|sgd|gd| x64(带s的是static链接,不带的是动态,带gd的是debug版本,不带的是release版本) (上图编译的是每种库 静态库-动态/静态链接-debug/release共四个版本 一般为静态库-动态链接-releae/debug即可)
如果图省事,可以使用命令:b2.exe --toolset=msvc-14.0 --build-type=complete,,,会生成静态库、动态库。
| --build-dir=<builddir> | 编译的临时文件会放在builddir里(这样比较好管理,编译完就可以把它删除了) |
| --stagedir=<stagedir> | 存放编译后库文件的路径,默认是stage stagedir/prefix:stage时使用stagedir,install时使用prefix,表示编译生成文件的路径。 stage/install:stage表示只生成库(dll和lib),install还会生成包含头文件的include目录。 (一般选择install 并指定好生成目录生成dll和lib以及include) |
| --build-type=complete | 编译所有版本,不然只会编译一小部分版本(确切地说是相当于:variant=release, threading=multi;link=shared|static;runtime-link=shared) |
| variant=debug|release | 决定编译什么版本(对应文件中的d 调试版本 不出现表示 release 版) |
| link=static|shared | 决定使用静态库还是动态库。(对应文件中的BOOST_LIB_PREFIX ) |
| threading=single|multi | 决定使用单线程还是多线程库。(对应文件中的BOOST_LIB_THREAD_OPT) |
| runtime-link=static|shared | 决定是静态还是动态链接C/C++标准库。(对应文件中的BOOST_LIB_THREAD_OPT) |
| --with-<library> | 只编译指定的库,如输入--with-regex就只编译regex库了。 |
| --show-libraries | 显示需要编译的库名称 |
综上,生成命令(不需要图形库可以 --without-graph):
b2.exe install --prefix="dll/lib/h路径" --toolset=msvc-14.0 address-model=64 link=static runtime-link=shared threading=multi debug release

在需要使用的vs项目属性的 包含目录和库目录添加好对应路径即可

本文详细介绍了如何使用Visual Studio编译Boost C++库,包括下载、解压、生成b2.exe、编译参数设置及如何生成不同版本的静态库和动态库。同时,还提供了如何在VS项目中正确配置库目录的方法。
616

被折叠的 条评论
为什么被折叠?



