boost的windows编译

boost库一款非常优秀的c++库,文档非常完善,鼓励商业或非商业使用,开源免费,被称为准标准库,下面介绍它在windows下的编译过程。

现在最新的boost库版本是1_53_0,可以在其官方网站下载,解压后,可以打开boost_1_53_0目录下的index.html文件,这里面对boost库进行了详细的说明,包括boost的安装,在文档的Getting Started on Windows中描述了使用MSVC的Command Prompt进行编译的过程。

例如我的机器安装了Visual Studio 2005,在开始菜单中打开Microsoft Visual Studio 2005 > Visual Studio Tools > Visual Studio 2005 Command Prompt。

然后使用命令行进入boost_1_53_0的目录,并执行以下命令
[php]
bootstrap
[/php]
这个步骤是安装boost库编译程序,最后会在boost_1_53_0目录下生成b2.exe程序,生成了b2.exe后,再执行
[php]
b2 –build-type=complete
[/php]
这个步骤就是编译boost库了,编译完成后,会在boost_1_53_0的stage目录中找到生成的lib文件,如boost_date_time-vc80-mt-gd-1_53.lib,其中vc80表示是vs2005版本的。

但我的机器安装了多个版本的编译工具,还安装了Visual Studio 2008,最后生成的却是boost_date_time-vc90-mt-gd-1_53.lib文件,vc90表示是用vs2008生成的,但我需要vs2005版本的,这就需要更改b2工具的配置了,在boost_1_53_0\tools\build\v2\目录中,打开user-config.jam,修改56行,去#注释,启用msvc8.0
[php]
# Configure specific msvc version (searched for in standard locations and PATH).
using msvc : 8.0 ;
[/php]
然后重新执行如下命令生成b2工具
[php]
bootstrap
[/php]
最后执行
[php]
b2 –build-type=complete
[/php]
生成动态库。

Comments are closed.