如果在Windows下开启console窗口(单击“开始”按钮,单击“运行”,敲入“cmd”),必须将/Microsoft Visual Studio 8/VC下的vcvarsall.bat配置脚本运行一遍,以设置好VC的编译器环境变量。 如果从vs2005的工具菜单进入命令提示窗口(单击“开始”按钮,指向“所有程序”,指向“Microsoft Visual Studio 2005”,指向“Visual Studio 工具”,然后单击“Visual Studio 2005 命令提示”),则不需要运行Visual Studio中C++目录下的环境vcvarsall.bat配置脚本。 在命令行窗口: 1)进入/boost_1_37_0/tools/jam,运行build_dist.bat,会在/boost_1_37_0/tools/jam/stage/bin.ntx86下生成bjam.exe,将bjam.exe复制到/boost_1_37_0下。 2)修改/boost_1_37_0/tools/build/v2/user-config.jam,将MSVC configuration 字段做如下改动: # Configure msvc (default version, searched for in standard locations and PATH). # using msvc ; using msvc : 8.0 : : <compileflags>/wd4819 <compileflags>/D_CRT_SECURE_NO_DEPRECATE <compileflags>/D_SCL_SECURE_NO_DEPRECATE <compileflags>/D_SECURE_SCL=0 ; using python : 2.6 ; 3)如果已经安装过ICU库(支持unicode的字符集,regex需要使用),则运行: bjam -sICU_PATH=d:/ICU --without-python --toolset=msvc-8.0 --build-type=complete stage 4)如果没有安装ICU库,则运行: bjam --without-python --toolset=msvc-8.0 --build-type=complete stage 5)经过几个小时的编译,在/boost_1_37_0/stage/lib下生成了所有需要的静态和动态链接库,将此路径设置为vc库文件路径,将/boost_1_37_0/设置为vc包含文件路径。即可运行boost程序。 其中: “动态链接库”,扩展名以.dll结束 “导入库”,扩展名以.lib结束,且文件名以版本号1_37结束 “静态链接库”,以扩展名.lib结束。 然后三种形式再次区分为“发行版”和“调试版”,后者的文件名比前者多出一个“-d-”修饰。另外我们还可以看到所有库文件名中都带有“-mt-”字样,这是表示这些库都支持“多线程/Multithreads”。 补充: 6)bjam一些参数的含义: 将stage改为install则表示直接安装,而不会在stage下生成lib和dll文件。 --without-python 表示不编译python库。 --with-thread表示只编译thread库。 --toolset : 所使用compiler,Visual Studio 2005 为 msvc-8.0,--toolset=gcc表示gcc编译。 --build-type:编译类型,complete表示生成所有的版本(也可以替换成参数:debug,release等)。 --prefix:指定编译后library的的目录。 7)CD至/boost_1_37_0/目录下,运行bjam --show-libraries,正常情况下输出以下内容: The following libraries require building: - date_time - filesystem - function_types - graph - iostreams - math - mpi - program _options - python - regex - serialization - signals - system - test - thread - wave 这里列出的是所有需要编译的boost模块,但我们将放弃对以下模块的编译: wave、mpi、 python、math、graph。这些模块的具体含义,大家如有需要,请自行查明。
Boost137在vs2005下编译使用
最新推荐文章于 2024-09-07 20:08:36 发布