关闭

windows 下编译64位的 Boost 1. 61. 0

标签: boost64位visual studiowindows源码
3661人阅读 评论(0) 收藏 举报
分类:

      一直以来都是在Win32环境下Build和使用boost,但现在基本上每天都在64位Win7下工作,所以很有必要把这几天的经验总结下来。

1. 下载并解压boost 1.61.0 压缩包

2. 解压并运行批处理文件bootstrap.bat,目录下会生成两个可执行文件

3. 和32位环境不同,x64环境下编译得先从开始菜单启动Visual Studio的VS2015 x64 Native Tools Command Prompt 进入命令提示符,而不是随便打开任意一个命令行窗口就行。

4. 然后cd到boost根文件夹,运行bootstrap.bat生成x64版的b2.exe 和 bjam.exe (他们只是版本不同的产物,但是用法一致,bjam是之前版本的,b2 是最新的)

5. 然后运行命令: 


b2 --build-type=complete toolset=msvc-14.0 threading=multi link=shared address-model=64 


即可生成DLL版平台库,如果要编译静态库版就把shared改为static。

  • 只生成一个库的话加上例如--with-python得编译选项,避免生成东西太多、时间太长。
  • 要有address-model=64属性,如果没有这个属性的话,会默认生成32位的平台库,加入这个选项才能生成64位的DLL。
  • 如果要生成Boost.Python库,需要先下载安装x64版的Python安装包,我用的版本是3.2.3。在使用这个库编写Python扩展DLL时,默认是使用动态库版的Boost.Python,要使用静态版的必须在C++项目中定义BOOST_PYTHON_STATIC_LIB宏,这样就不用在使用或发布扩展时带着boost_python-vc90-mt-1_50.dll一起了,当然扩展DLL的尺寸会大些,如果做实验没必要这样,编译又慢生成的文件也大。
  • vs工具链版本:vs2003 : msvc-7.1,vs2005 : msvc-8.0,vs2008 : msvc-9.0,vs2010 : msvc-10.0, vs2015:msvc-14.0
3
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:6291次
    • 积分:136
    • 等级:
    • 排名:千里之外
    • 原创:6篇
    • 转载:4篇
    • 译文:0篇
    • 评论:0条