2011-02-02 89 views
5

我有一個需要opencl的項目。我已經安裝了CUDA和OpenCL我的機器上,但是當我做「我的項目出現以下錯誤:cl.h找不到 - 如何在makefile中鏈接

CL/cl.h: No such file or directory 

我知道我可以(在我的UNIX(Ubuntu的)系統)創建硬鏈接修復問題:

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

但我認爲這是一個快速修復,而不是正確的解決方案。我想在我的makefile中處理這個(我猜),以便編譯一個簡單的「make」命令。我怎麼能這樣做?

回答

5

您需要將適當的-I選項傳遞給編譯器(例如,通過設置CPPFLAGS或CFLAGS)。 -I/usr/include/nvidia-current聽起來像它的工作。

+0

我最終將它添加到一個單獨的文件,處理該特定模塊的INCLUDEPATHS。但證實你的選擇確實可行,而且確實是我最初要求的。因此接受你的答案是最終的。謝謝。 – bastijn 2011-02-02 09:10:23

1

我看到compile opencl program using CL/cl.h file

我安裝了7.5這個線程及以下鏈接添加在/ usr/include目錄,它適合我的OpenCL程序。看起來像CUDA忘記安裝後執行此鏈接。

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

您是否使用UbuntuDebian發行版?那麼現在你可以使用這個包:

sudo apt-get install opencl-headers