谁能解释为什么遵循这些指示:
http://www.boost.org/doc/libs/1_59_0/more/getting_started/unix-variants.html#easy-build-and-install
......我的体面机器需要5个小时来构建所有的Boost,而有些人报告只用了3 分钟做同样的事情?
有没有另一种方法可以构建Boost而不是上面提到的那种确实非常快的方式(相比之下,几个小时,无论如何).
我在Darwin(Mac)选项上使用Clang编译器.不知道它有多相关,但我有16 GB RAM和最近的SSD.时钟是2.3 Ghz.
编辑:我很高兴根据评论和答案报告,使用./b2 -j4 -d0选项,我的编译时间缩短到13分钟.此-jN选项未在默认的可用选项集中列出--help,您必须调用--help-options以查看这些额外的更"高级"技术.
zap*_*oyd 17
我刚刚用一些不同的构建配置进行了一些测试.
硬件:2012 MacBook Pro(2.3Ghz Ivy Bridge i7 [i7-3615QM]),工厂SSD和16GB内存.
软件:带有Xcode 7的Mac OS X 10.11.1(Apple LLVM版本7.0.0 clang-700.1.76).来自网站的Boost 1.59.0的新副本.
我测试了以下构建命令:
默认构建:
./bootstrap.sh && ./b2 -j N
构建强制libc ++的链接
./bootstrap.sh && ./b2 toolset=clang cxxflags="-stdlib=libc++" linkflags="-stdlib=libc++" -j N
对于每个我尝试了N:1(单线程),4(匹配物理核心)和8(匹配超线程核心)的三个不同值.
默认链接:
链接libc ++:
结论:即使不是全新的,Boost也不必花费一整天的时间来建立一个带有SSD的多核系统.使用默认(单个线程)构建确实比并行构建更长.OS X上带有clang的Boost构建确实从超线程中获益.与libc ++的链接似乎也快一点.
我猜你没有使用并行构建选项-jN(其中N个进程,可能比你机器上的核心数略高).另外3分钟的声音就像是配备sdd或ram磁盘的机器上的单一配置,以及5个小时的所有配置,单个进程和慢速HDD.
| 归档时间: |
|
| 查看次数: |
12820 次 |
| 最近记录: |