首页 > 代码库 > Visual Studio 2013 编译 boost-1_56_0_b1

Visual Studio 2013 编译 boost-1_56_0_b1


1、首先下载源代码包:http://www.boost.org/users/history/version_1_56_0.html  目前最新版本 

2、解压缩到D:\boost-1_56_0_b1目录下

3、点击 D:\boost-1_56_0_b1目录下 bootstrap.bat 批处理文件  会生成bjam.exe和project-config.jam这两个文件

4、在开始菜单中 找到 Visual Studio 2013---Visual Studio Tools----VS2013 开发人员命令提示工具   指向 D:\boost-1_56_0_b1 目录 如下图(当然在你的计算机上要先安装好 Visual Studio 2013


5:在该命令行工具中执行  bjam stage --without-python --toolset=msvc-12.0 --build-type=complete --stagedir="D:\boost\vc12" 

(编译大概需要两个小时,当然你也可以只编译你需要用到的库不需要全部编译)

下面详细解释一下每个参数的含义: 
stage/install:stage表示只生成库(dll和lib),install还会生成包含头文件的include目录。

toolset:指定编译器,可选的如borland、gcc、msvc(VC6)、msvc-12.0(VS2013)等。

without/with:选择不编译/编译哪些库。

stagedir/prefix:stage时使用stagedir,install时使用prefix,表示编译生成文件的路径。推荐给不同的IDE指定不同的目录,如VS2010对应的是D:\boost\vc12,否则都生成到一个目录下面

build-dir:编译生成的中间文件的路径。这里没用到

link:生成动态链接库/静态链接库。生成动态链接库需使用shared方式,生成静态链接库需使用static方式。一般boost库可能都是以static方式编译,因为最终发布程序带着boost的dll感觉会比较累赘。

runtime-link:动态/静态链接C/C++运行时库。同样有shared和static两种方式,这样runtime-link和link一共可以产生4种组合方式,各人可以根据自己的需要选择编译。一般link只选static的话,只需要编译2种组合即可,即link=static runtime-link=shared和link=static runtime-link=static。

threading:单/多线程编译。一般都写多线程程序,当然要指定multi方式了;如果需要编写单线程程序,那么还需要编译单线程库,可以使用single方式。

debug/release:编译debug/release版本。一般都是程序的debug版本对应库的debug版本,所以两个都编译。

运行完后(弹出输入提示符)  

附:boost 需要编译的全部库


     - atomic
    - chrono
    - container
    - context
    - coroutine 
    - date_time
    - exception
    - filesystem 
    - graph
    - graph_parallel 
    - iostreams
    - locale
    - log
    - math
    - mpi 
    - program_options 
    - python
    - random
    - regex
    - serialization
    - signals
    - system 
    - test
    - thread
    - timer 
    - wave