2011-02-02 9 views
5

私はopenclを必要とするプロジェクトを持っています。私は私のマシン上でCUDAやOpenCLのをインストールしているが、私は私のプロジェクトは、次のようなエラーが発生した「make」をするとき:cl.hが見つかりません - makefileをリンクするには

CL/cl.h: No such file or directory 

私は修正するために(私のUNIX(Ubuntuの)システムの)ハードリンクを作成することができることを知っています問題:

ln -s /usr/include/nvidia-current/CL 

しかし、私はこれをすばやく修正し、正しい解決策ではないと考えています。私は単純な "make"コマンドがコンパイルされるように、これを私のmakefile(私が推測する)で処理したいと思います。どうすればこのことができますか?

答えて

5

適切な-Iオプションをコンパイラに渡す必要があります(たとえば、CPPFLAGSまたはCFLAGSを設定します)。 -I/usr/include/nvidia-currentはうまくいくと思います。

+0

私はその特定のモジュール用に別のファイル処理INCLUDEPATHSに追加することになった。そして、今、あなたは、このパッケージを使用することができます。しかし、あなたのオプションも同様に機能していることを実証しました。あなたの答えを最終的なものとして受け入れました。ありがとう。 – bastijn

+0

これはちょうどntvドライバの新しい200シリーズでdarktableをコンパイルするのに役立ちました。 (CL/cl.hヘッダファイルを提供するDebianパッケージはまだありません) –

+0

@Simon A. Eugster:http://packages.debian.org/experimental/opencl-headers – derobert

1

私は7.5をインストールして、/ usr /それは私のOpenCLのプログラムのために働く、含んでリンクの下に追加compile opencl program using CL/cl.h file

からこのスレッドを見ました。 CUDAはインストール後にこのリンクを実装するのを忘れているようです。

ln -s /usr/local/cuda-7.5/include/CL /usr/include 
0

あなたはUbuntuDebianディストリビューションを使用していますか?

sudo apt-get install opencl-headers 
関連する問題