最近突然对boost发生了兴趣,但是boost安装非常麻烦,网上介绍的方法大都不全面,搜到了一篇关于在其它编译器安装boost的方法,试着改为C++Builder2007适用的方法和大家分享,发布这篇文章之前只做过简单测试,如有问题,请指出。
安装时我的电脑只安装了CodeGear RAD Studio2007,没有安装VS等其它编译工具,如果你的电脑同时安装了其它编译工具,你需要谨慎,当然是否有问题我也不知道,你自己研究吧,把最后的结果贴出来大家分享。
1.相关网址 官方网站:http://www.boost.org/
2. 准备
您可以上boost官方网站(参看1.相关网址),下载这两个文件(既然是免费,还是官方的好):
boost 1.36.0 的源代码压缩文件,推荐下载 7zip 版本:boost_1_36_0.7z“。
boost 编译工具,请选择windows下的可执行文件:boost-jam-3.1.16-1-ntx86.zip下载后,得到源代码压缩文件,如果是7zip格式的“boost_1_36_0.7z”,约25M,解压后,将迅速变为175M,但这仅仅是源代码及文档的大小,在编译过程中,所需的空间更是惊人,请您保证解压缩后文件所在的磁盘驱动器,至少有2个G的可用空间(有人说需要更大的空间,不过我用了不到1.9G)。
boost 的编译工具,可以根据需要,将编译之后库文件,及不需要编译的头文件,统一复制到指定的目录,这样有利于我们得到一个“干净”的boost编译结果目录,本文将采用此方法。
下面,我们假设boost_1_36_0.7z被解压到“X:\tmp\boost_1_36_0”目录下,其中“X:”表示您选用的磁盘驱动器盘符, “tmp”是我们事先创建的文件夹,而 “boost_1_36_0”则在解压以后得到。我们把“X:\tmp\ boost_1_36_0”称为“boost安装源路径”。
接下来,假设我们希望它boost安装到“E:\ boost_1_36_0”目录下,请事先创建好这个文件夹,我们把这个路径,称为“boost安装目标路径”。
请解压“boost-jam-3.1.16-1-ntx86.zip”文件,得到bjam.exe,将它复制到boost安装源路径,即“X:\tmp\boost_1_36_0”之下。
3. 编译
步骤1:打开“开始”菜单,选择“运行”,输入cmd,进入控制台窗口,然后在其内通过cd命令,切换到boost安装源路径下。本例中为:
“X:\tmp\boost_1_36_0”,则过程如下:
X: (回车)
cd tmp\boost_1_36_0 (回车)
步骤2:继续上步,请在控制台内输入:
bjam ——show-libraries (回车)
步骤3:正确情况下,将看到以下输出内容:
The following libraries require building: - date_time - filesystem - function_types - graph - iostreams - math - mpi - program _options - python - regex - serialization - signals - system - test - thread - wave |
步骤4:这里列出的是所有需要编译的boost模块,但我们将放弃对以下模块的编译: wave、mpi、 python、math、graph.这些模块的具体含义,大家如有需要,请自行查明。
步骤5:继续上步,在控制台内输入:
bjam install --toolset=borland --prefix="E:\boost_1_36_0" debug --without-wave --without-mpi --without-python --without-math --without-graph (回车) |
步骤6:请特别注意,要更换为您自己的“boost安装目标路径”。其它部分作如下说明:
步骤7:—— 是两个连续的减号,=前后均不能夹带空格,除路径之外,参数都是小写字母。
步骤8:——toolset 表示采用borland编译。因此,要正确编译boost,请您一定事先已安装C++Builer2007.
步骤9:debug表示我们首先编译“调试版”。现在很多人在安装boost后,使用时总是提示缺少某个带“-d-”的lib文件,实际就是缺少这一步,它是C++Builder2007在debug时所需要的。
步骤10:多个 ——without 指定了所要放弃编译的模块。你也可以根据你的需要,在此增加或去掉某个模块。
步骤11:回车后,控制台内将出现大量看似奇奇怪怪地文字,最后能看到以下内容,就表示成功完成本步:
……failed updating 2 targets.
……skipped 31 targets……
……updated 341 targets……
这个需要比较长的时间,你可以休息一下,做点其它事,时间多长取决于你的计算机。我花了15分钟左右。
4. release版本在控制台内输入:
bjam install --toolset=borland --prefix="E:\boost_1_36_0" release --without-wave --without-mpi --without-python --without-math --without-graph (回车) |