C++ ICC(14.0)甚至不能在Ubuntu 13.10中编译hello world?

C++ ICC(14.0)甚至不能在Ubuntu 13.10中编译hello world?,c++,linux,gcc,intel,C++,Linux,Gcc,Intel,对于Linux来说,我刚刚安装了一个Ubuntu 13.10 64位,Eclipse 3.8和intel的ICC 14.0 Ubuntu附带的GCC版本是4.8.1 到目前为止,安装的ICC甚至无法在Eclipse中编译hello world,因为它无法编译iostream头 iostream标头将包括另一个名为c++config.h的标头,该标头存储在/usr/include/x86_64-linux-gnu/c++/4.8/bits iostream头本身存储在/usr/include/c+

对于Linux来说,我刚刚安装了一个Ubuntu 13.10 64位,Eclipse 3.8和intel的ICC 14.0

Ubuntu附带的GCC版本是4.8.1

到目前为止,安装的ICC甚至无法在Eclipse中编译hello world,因为它无法编译iostream头

iostream
标头将包括另一个名为
c++config.h
的标头,该标头存储在
/usr/include/x86_64-linux-gnu/c++/4.8/bits

iostream
头本身存储在
/usr/include/c++/4.8

<> P> GCC编译器可以完美地编译Hello World CPP和其他C++文件,但是ICC甚至无法编译Hello World,告诉我它不能找到<代码> C++ +COFIG.H./Cuth>标头,即使我在项目中包含了它的路径。
有人知道这方面的解决方法吗?

在不改变太多设置的情况下,存在两种可能性:

  • 在默认版本的基础上安装一个旧版本的GCC,假设ICC可以使用某些版本,只是可能不是您现在拥有的最新版本
  • 安装更新版本的ICC。看起来您可能已经有了最新版本,但可能已经发布了补丁。不过我有点怀疑
  • 当混合和匹配不同的编译器和标准库时,这种情况经常发生。如果两人年龄大致相同,则会有所帮助。

    您可以:

  • 在命令行上添加系统包含

    icc-idirafter/usr/include/x86_64-linux-gnu/c++/4.8/-I-Lmy.cpp

  • 将其永久添加到icc.cfg

    cat/opt/intel/composer\u xe\u 2013\u sp1.1.106/bin/intel64/icc.cfg

    -idirafter/usr/include/x86_64-linux-gnu/c++/4.8/


  • 我成功地使用它编译了scipy。

    我在使用最新版本的英特尔编译器时遇到了同样的问题,
    icc版本14.0.1(gcc版本4.8.0兼容性)
    。在从13.04升级到Ubuntu 13.10之前,我没有遇到任何问题。我已经把这个问题提交给了英特尔的人,但是线程已经过时了。也许一些额外的bug报告会激励他们去修复它。