Icpcを使用して64ビットマシンでプログラムをコンパイルしようとしています。残念ながら、catastrophic error: cannot open source file "bits/c++config.h"
のエラーメッセージが表示されます。 ここ からいくつかのアドバイスを採用しましたが、成功しませんでした。また、事前にsource /opt/intel/bin/compilervars.sh intel64
を実行することを忘れないでください。これが重要な場合に備えて、Ubuntu13.10を使用しています。
まず、不足しているファイルを見つけます。
find /usr -name c++config.h
(ほとんどの場合、ヘッダーは/ usrにあります。)次に、その最上位ディレクトリをコンパイルコマンドのインクルードパスに追加します。これにより、コンパイラは次のようになります。 -Iオプションを使用して、「bits/c ++ config.h」を見つけます。同様の質問がSO、ところですでに尋ねられました: buntuで32ビットで64ビットプログラムをクロスコンパイルするときに "bits/c ++ config.h"がありません 。
何らかの理由で、icpcコンパイラは次のディレクトリを解析しません。次の変数を設定できます。 4.8をg ++バージョンに置き換えます
export CPLUS_INCLUDE_PATH=$CPLUS_INCLUDE_PATH:/usr/include/x86_64-linux-gnu/c++/4.8