2017-09-15 10 views
0

iccコンパイラとMAGMAmicライブラリでソースファイルをコンパイルしようとしています。しかし、私は次のエラーを取得する:iccとMAGMAmicでコンパイルすると "複雑な"システムファイルが見つかりません

icc -c -o direct.o direct.c -O3 -openmp -DADD_ -Wall -DHAVE_MIC -I/opt/intel/mic/coi/include -I/usr/include/intel-coi -I/opt/intel/compilers_and_libraries_2017.2.174/linux/mkl/include:/opt/intel/compilers_and_libraries_2017.2.174/linux/ipp/include:/opt/intel/compilers_and_libraries_2017.2.174/linux/mkl/include:/opt/intel/compilers_and_libraries_2017.2.174/linux/tbb/include:/opt/intel/compilers_and_libraries_2017.2.174/linux/daal/include -I/home/dslavchev/install/magmamic-1.4.0/include -I/home/dslavchev/install/magmamic-1.4.0/contol 
icc: command line remark #10411: option '-openmp' is deprecated and will be removed in a future release. Please use the replacement option '-qopenmp' 
In file included from /home/dslavchev/install/magmamic-1.4.0/include/magma_types.h(134), 
      from /home/dslavchev/install/magmamic-1.4.0/include/magmablas_z.h(17), 
      from /home/dslavchev/install/magmamic-1.4.0/include/magmablas.h(12), 
      from /home/dslavchev/install/magmamic-1.4.0/include/magma.h(17), 
      from direct.c(21): 
/opt/intel/compilers_and_libraries_2017.2.174/linux/compiler/include/complex(30): catastrophic error: cannot open source file "complex" 
#include_next <complex> 
        ^

MAGMAmicライブラリが正しくコンパイルされていると私はそれをテストOKです実行することができます。 私はtesting_dgesv_mic.cppのコンパイルの方法を見て、同じインクルードとリンクを使用しましたが、私の場合は上記のエラーが発生します。私は、インテル®コンパイラーとライブラリのenviromental変数を取得するために、私の.bashrcファイルに以下を追加した

#for MAGMA mic 
export MAGMA_PATH=/home/dslavchev/install/magmamic-1.4.0 

source /opt/intel/bin/compilervars.sh intel64 
source /opt/intel/mkl/bin/mklvars.sh intel64 

ICCは 『複雑』を含めることができないために発生する可能性がありますどのような任意のアイデアファイル?

ファイルコンプレックスが本当に "/opt/intel/compilers_and_libraries_2017.2.174/linux/compiler/include/complex"

のICC vesrionに存在がある:

[[email protected] results]$ icc -v 
icc version 17.0.2 (gcc version 4.4.7 compatibility) 

magmamicバージョンmagmamic-1.4です。 0

編集:削除された不要なコードコメント EDIT2:バージョン情報が追加されました。

+0

#include_nextインテル®C++コンパイラー17.0アップデート2に付属の複合ヘッダー内の次の利用可能な複合ヘッダー(GNU提供のものを探しています)を探しています。どのGCCのバージョンを使用していますか? –

+0

私はicc(インテルコンパイラ)バージョン17.0.2 –

+0

を使用しています。どのGCC互換モードでICCを実行していますか?次のコマンドを実行してこの情報を得ることができます icc -v –

答えて

0

MAGMAmicはC++ライブラリであり、Cコードで直接使用することはできません。

iccが.C++ファイルをコンパイルすることを検出すると、自動的にicpc(Intel C++コンパイラ)に切り替わり、上記のエラーが発生します。

ソリューション:ICPCに切り替えるか、この質問は、MAGMAフォーラムでマークで答えた++

を.Cためにあなたのファイルの名前を変更のどちらか。リンク: http://icl.cs.utk.edu/magma/forum/viewtopic.php?f=2&t=1587&p=4442#p4442

関連する問題