使用英特尔编译器构建Boost库

4
我在32位Windows 7机器上除了Visual Studio 2012之外,还安装了Intel Parallel Studio XE 2013。我按照链接中的说明,尝试使用Intel编译器构建Boost 1.53。但是出现了以下错误:

.\boost/config/select_stdlib_config.hpp(18): catastrophic error: cannot open source file "cstddef"

是否有其他人遇到了相同的问题?我希望能得到任何有关将ICC的标准库链接到boost构建过程中的建议。谢谢。
3个回答

7
经过一番紧张搜寻,我终于找到了解决方案。正如这个链接所解释的那样,需要对boost文件夹应用两个补丁:
  1. [boost-source-directory]\tools\build\v2\tools中的intel-win.jam文件需替换为链接中提供的该文件。

  2. project-config.jam文件需替换为链接中提供的intel-user-config.jam,并将构建命令更改为:

b2 --user-config=intel-user-config.jam --toolset=intel

请注意,根据您现有的ICC安装情况,可能需要在intel-user-config.jam文件中修改intel编译器版本号。


干得好。谢谢你分享这个。未来的SO用户会感激的。所以,现在是我:) - sehe

2
运行命令"./bootstrap.sh --with-toolset=intel-linux",然后执行"b2 install"将使用intel-linux.compile.c++ (boost_1_64_0)进行编译。

1
您的建议适用于Linux系统。但是,OP提出了Windows系统的问题:“我已经在32位Windows 7电脑上安装了Intel Parallel Studio XE 2013和Visual Studio 2012。” - András Aszódi

0

这个链接中的被接受的答案解决了我类似的问题,该问题涉及Intel编译器17.0更新5和Visual Studio 17。

您需要更改tools/build/src/tools/intel-win.jam中的几行代码。

请注意,构建过程会出现一些警告。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接