编译boost (boost_1_49_0)

本文介绍如何编译 Boost 1.49.0 版本库,提供了一个自动化的编译脚本,适用于 VS2008 和 VS2010 的 32 位及 64 位版本。通过简单的步骤即可快速完成编译。

写在最前:

老版本的boost编译可以参考以下:(其实boost的所有版本编译都差不多)

Boost_1_46_1编译: http://blog.youkuaiyun.com/great3779/article/details/6454663

Boost_1_47_0编译: http://blog.youkuaiyun.com/great3779/article/details/6654780

Boost_1_48_0编译: http://blog.youkuaiyun.com/great3779/article/details/6977922


Boost社区在2012年2月24日发布了boost_1_49_0,本着程序员“喜新厌旧”的基本美德,当然要一尝先为快了。虽然编译1.49.0与编译之前boost版本大同小异,但为进一步简化编译,我写了一个编译脚本(附在最后),能自动将boost编译成vs2008、vs2010的32位及64位版本。过程如下:

1. 至http://sourceforge.net/projects/boost/files/boost/1.49.0/下载boost_1_49_0.7z(boost_1_49_0 )。

2. 解压至D:\boost_1_49_0\ (当然也可以是其他文件夹,仅作示例。如下图)


3. 将批处理文件放在D:\boost_1_49_0\下。批处理文件可至http://download.youkuaiyun.com/detail/great3779/4104039免费下载。(也即附在最后的脚本)


4. 接下来,你只需要启动批处理,然后端一杯咖啡,等待脚本为你做完一切。完成后的效果如下图:


5. 最后,去设置你的编译器,开始使用最新版的boost吧。



附:批处理脚本:

rem 创建者:黄志丹 great3779@sina.com 20120301

rem @echo off

rem 先编译bjam
start bootstrap.bat

rem 等待一分钟待bjam编译完成(如果电脑性能过差,可以设置等待时间更长一些)
SET SLEEP=ping 127.0.0.1 -n
%SLEEP% 60 > nul

rem 利用bjam编译boost库
rem 在此,我们编译vs2008和vs2010下的x86及x64共4类boost库文件

rem 建立库文件夹
rem vs2008 win32库文件夹
md stage\lib\win32\vs9_0\

rem vs2008 x64库文件夹
md stage\lib\x64\vs9_0\

rem vs2010 win32库文件夹
md stage\lib\win32\vs10_0\

rem vs2010 x64库文件夹
md stage\lib\x64\vs10_0\

rem ******************************************************************
rem 先删除lib下所有文件(不删除文件夹)
del stage\lib\*.* /Q

rem 编译vs2008 win32库文件
bjam --toolset=msvc-9.0 architecture=x86 --with-system --with-thread --with-date_time --with-filesystem --with-serialization

rem 拷贝至\stage\lib\win32\vs9_0
copy stage\lib\*.* stage\lib\win32\vs9_0\*.* /Y
rem ##################################################################

rem ******************************************************************
rem 先删除lib下所有文件(不删除文件夹)
del stage\lib\*.* /Q

rem 编译vs2008 x64库文件
bjam --toolset=msvc-9.0 architecture=x86 address-model=64 --with-system --with-thread --with-date_time --with-filesystem --with-serialization

rem 拷贝至\stage\lib\x64\vs9_0
copy stage\lib\*.* stage\lib\x64\vs9_0\*.* /Y
rem ##################################################################

rem ******************************************************************
rem 先删除lib下所有文件(不删除文件夹)
del stage\lib\*.* /Q

rem 编译vs2010 win32库文件
bjam --toolset=msvc-10.0 architecture=x86 --with-system --with-thread --with-date_time --with-filesystem --with-serialization

rem 拷贝至\stage\lib\win32\vs10_0
copy stage\lib\*.* stage\lib\win32\vs10_0\*.* /Y
rem ##################################################################

rem ******************************************************************
rem 先删除lib下所有文件(不删除文件夹)
del stage\lib\*.* /Q

rem 编译vs2010 x64库文件
bjam --toolset=msvc-10.0 architecture=x86 address-model=64 --with-system --with-thread --with-date_time --with-filesystem --with-serialization

rem 拷贝至\stage\lib\x64\vs10_0
copy stage\lib\*.* stage\lib\x64\vs10_0\*.* /Y
rem ##################################################################

rem 删除lib下所有文件(不删除文件夹)
del stage\lib\*.* /Q

rem boost_1_49_0共有21个库需要编译使用,分别是chrono, date_time, exception, filesystem, graph, graph_parallel, iostreams, locale, math, 
rem mpi, program_options, python, random, regex, serialization, signals, system, test, thread, timer, wave。
rem 我仅选用了自己常用的几个做以上编译示例,其他使用者可以根据自己的需求选择编译。全部编译boost大概需要1个小时以上(视机器性能)
rem 全部编译boost的命令如下:bjam --toolset=msvc-9.0 --build-type=complete stage


评论 14
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值