0

独自のmakefileが付属するコード(私のものではありません。Cを使用してcudaと通信します)をコンパイルしようとしていますが、次のエラーメッセージが表示されます。

icc  -fPIC  -vec-report1 -g  -O3 -fno-strict-aliasing -DNDEBUG -I. -I/include -DUNIX -DCPU_RECOMPUTE=1 -DFULL_DOUBLE=0 -c classify_functions.cpp -o classify_functions.o

classify_functions.cpp(4): catastrophic error: cannot open source file "cuda_runtime.h"
  #include <cuda_runtime.h>
                           ^

compilation aborted for classify_functions.cpp (code 4)

make: *** [classify_functions.o] Error 4

「locate」を使用して、/usr/local/cuda/include/cuda_runtime.h が存在することを確認しました。次に、変数PATH、LD_LIBRARY_PATH、およびC_INCLUDE_PATHで.bashrcに追加しようとしましたが、どれも機能していないようです。icc ヘッダー ファイルのパス用の別の変数はありますか? そうでない場合、コンパイラがファイルを開くことができないのはなぜですか?

(もっと情報を提供できますが、この場合に何が関連するのか本当にわかりません)

4

1 に答える 1

0

Linux (およびおそらく MacOS) では、コンパイラ インクルード パスは*

/opt/intel/compilers_and_libraries_2018.0.128/linux/compiler/include

ライブラリパスは

/opt/intel/compilers_and_libraries_2018.0.128/linux/compiler/lib

cuda_runtime.hそのため、そのファイルが (他の必要なヘッダー ファイルと共に) コンパイラ パスにあることを確認する必要があります。

*Intel のコンパイラ icc が適切にインストールされ、インストール パスがデフォルトのままであると仮定します。

于 2017-11-09T16:46:24.930 に答える