在windows下编译boost 1.32库

王朝system·作者佚名  2006-01-09
窄屏简体版  字體: |||超大  

我的环境是VC.Net 2003+stlport 4.62和mingw 3.41,操作系统为windows 2003,boost解压缩在c:\opt\boost。

boost库一共有10个库需要编译,其他的都只需要直接将头部文件包含就可以了。

从sourceforege的boost项目下下载bjam.bin.ntx86.zip,这个也可以自己编译的。我将其直接解压缩到c:\windows\system32下了。

首先设置(保证和你的实际上情况一致,没有python则不要设置了)

set PYTHON_ROOT=c:\python

PYTHON_VERSION=2.4

在解压缩产生的根目录下直接编译。在这里将讲述如何编译mingw,vc-7_1,vc-7_1-stlport。

编译mingw和vc-7_1最简单了,只要设置set TOOLS=vc-7_1或者set TOOLS=mingw,如果是mingw直接bjam install就可以了,如果是vc-7_1,bjam "-sBUILD=debug release static/dynamic multi" install,然后就是漫长的等待了,3个小时左右。

如果是vc-7_1-stlport,首先修改boost源代码,参考http://mail.python.org/pipermail/c++-sig/2003-August/005319.html,http://article.gmane.org/gmane.comp.lib.boost.user/8324/match=date+time,http://lists.boost.org/MailArchives/boost/msg76098.php。这样将stlport同样解压缩到C:\opt\STLport-4.6.2。修改src\vc71.mak,将

EXTRA COMMON FLAGS=/FI "vc warning disable.h" /D " MBCS"改为

EXTRA COMMON FLAGS=/FI "vc warning disable.h" /D " MBCS" /Zc:wchar t

。然后编译安装,注意不要急着删除,编译boost时还用得到。修改vc-7_1-stlport-tools.jam,将

feature native-wchar_t : off on ;改为feature native-wchar_t : on off;

然后设置set STLPORT_VERSION=4.6.2,set STLPORT_4.62_PATH=C:\opt\STLport-4.6.2,set TOOLS=vc-7_1-stlport,然后bjam "-sBUILD=debug release static/dynamic multi" install

你会发现编译出来的lib有重复的,自己删除好了

注意在VC下用stlport编译debug版本,需要预定义宏_STLP_DEBUG,如果定义了BOOST_LIB_DIAGNOSTIC,vc下就不需要显示的连接lib库了,一个典型的例子是cl /D_STLP_DEBUG /DBOOST_LIB_DIAGNOSTIC /MDd /GX simple_ls.cpp

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航