编译boost

原文出处: http://blog.csdn.net/great3779/article/details/8757645


写在最前:

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

Boost_1_46_1编译: http://blog.csdn.net/great3779/article/details/6454663

Boost_1_47_0编译: http://blog.csdn.net/great3779/article/details/6654780

Boost_1_48_0编译: http://blog.csdn.net/great3779/article/details/6977922

Boost_1_49_0编译: http://blog.csdn.net/great3779/article/details/7310392

Boost_1_52_0编译:http://blog.csdn.net/great3779/article/details/8460889

 

Boost社区早在2013年2月4日即发布了boost_1_53_0,由于最近工作上比较忙,因此直到今天才有空将此最新版本的boost编译指南放上来。原来的编译脚本在1_53_0上是完全兼容的,同样能自动将boost编译成vs2008、vs2010的32位及64位版本(注:编译之前须确保电脑已经安装了vs2008/vs2010)。过程复述如下:

1. 至http://sourceforge.net/projects/boost/files/boost/1.53.0/下载boost_1_53_0.7z。(说点题外话,.7z是7zip下的一种通用压缩格式,具有比.rar和.zip更优秀的性能,并且还是开源的(可获取到所有源代码!),最近我也正在研读其源代码,其实现的string-like类(CStringBase)以及vector-like类(CBaseRecordVector)具有和STL相似的功能,且可读性更好。网址为 http://www.7-zip.org/ )

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

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

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

5. 最后,去设置你的编译器,开始使用最新版的boost吧。(注:boost头文件位置:D:\boost_1_53_0\boost,静态lib文件目录:D:\boost_1_53_0\stage\lib)



[plain] view plaincopyprint?在CODE上查看代码片派生到我的代码片

  1. rem 创建者:黄志丹 [email protected] 20130403  

  2.   

  3.   

  4. rem @echo off  

  5.   

  6.   

  7. rem 先编译bjam  

  8. start bootstrap.bat  

  9.   

  10.   

  11. rem 等待一分钟待bjam编译完成(如果电脑性能过差,可以设置等待时间更长一些)  

  12. SET SLEEP=ping 127.0.0.1 -n  

  13. %SLEEP% 60 > nul  

  14.   

  15.   

  16. rem 利用bjam编译boost库  

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

  18.   

  19.   

  20. rem 建立库文件夹  

  21. rem vs2008 win32库文件夹  

  22. md stage\lib\win32\vs9_0\  

  23.   

  24.   

  25. rem vs2008 x64库文件夹  

  26. md stage\lib\x64\vs9_0\  

  27.   

  28.   

  29. rem vs2010 win32库文件夹  

  30. md stage\lib\win32\vs10_0\  

  31.   

  32.   

  33. rem vs2010 x64库文件夹  

  34. md stage\lib\x64\vs10_0\  

  35.   

  36.   

  37. rem ******************************************************************  

  38. rem 先删除lib下所有文件(不删除文件夹)  

  39. del stage\lib\*.* /Q  

  40.   

  41.   

  42. rem 编译vs2008 win32库文件  

  43. bjam --toolset=msvc-9.0 architecture=x86 --with-system --with-thread --with-date_time --with-filesystem --with-serialization  

  44.   

  45.   

  46. rem 拷贝至\stage\lib\win32\vs9_0  

  47. copy stage\lib\*.* stage\lib\win32\vs9_0\*.* /Y  

  48. rem ##################################################################  

  49.   

  50.   

  51. rem ******************************************************************  

  52. rem 先删除lib下所有文件(不删除文件夹)  

  53. del stage\lib\*.* /Q  

  54.   

  55.   

  56. rem 编译vs2008 x64库文件  

  57. bjam --toolset=msvc-9.0 architecture=x86 address-model=64 --with-system --with-thread --with-date_time --with-filesystem --with-serialization  

  58.   

  59.   

  60. rem 拷贝至\stage\lib\x64\vs9_0  

  61. copy stage\lib\*.* stage\lib\x64\vs9_0\*.* /Y  

  62. rem ##################################################################  

  63.   

  64.   

  65. rem ******************************************************************  

  66. rem 先删除lib下所有文件(不删除文件夹)  

  67. del stage\lib\*.* /Q  

  68.   

  69.   

  70. rem 编译vs2010 win32库文件  

  71. bjam --toolset=msvc-10.0 architecture=x86 --with-system --with-thread --with-date_time --with-filesystem --with-serialization  

  72.   

  73.   

  74. rem 拷贝至\stage\lib\win32\vs10_0  

  75. copy stage\lib\*.* stage\lib\win32\vs10_0\*.* /Y  

  76. rem ##################################################################  

  77.   

  78.   

  79. rem ******************************************************************  

  80. rem 先删除lib下所有文件(不删除文件夹)  

  81. del stage\lib\*.* /Q  

  82.   

  83.   

  84. rem 编译vs2010 x64库文件  

  85. bjam --toolset=msvc-10.0 architecture=x86 address-model=64 --with-system --with-thread --with-date_time --with-filesystem --with-serialization  

  86.   

  87.   

  88. rem 拷贝至\stage\lib\x64\vs10_0  

  89. copy stage\lib\*.* stage\lib\x64\vs10_0\*.* /Y  

  90. rem ##################################################################  

  91.   

  92.   

  93. rem 删除lib下所有文件(不删除文件夹)  

  94. del stage\lib\*.* /Q  




--------------------------add------------------------------------------

编译regex的命令为

[plain] view plaincopyprint?在CODE上查看代码片派生到我的代码片

  1. bjam --toolset=msvc-10.0 architecture=x86 --with-regex  


编译静态连接的regex

bjam --toolset=msvc-9.0 architecture=x86 --with-regex -link=static runtime-link=static  debug release


http://jingyan.baidu.com/article/a3aad71aa1ebe7b1fb009681.html


// 如果要获取动态库:

bjam install stage --toolset=msvc-12.0 --stagedir="C:\Boost\boost_vc_120" link=shared runtime-link=shared threading=multi debug release  



// 如果是要获取静态库:




bjam install stage --toolset=msvc-12.0 --stagedir="C:\Boost\boost_vc_120" link=static runtime-link=static threading=multi debug release  


你可能感兴趣的:(编译boost)