在windows下编译boost 1.32库

我的环境是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
阅读更多
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭