我是OpenCL的新手.我在OpenCL的帮助下在Internet上编写了一个矢量加法代码.我已经包含了一个头文件,即CL/cl.h
使用#include
.
我使用的是NVIDIA显卡,OpenCL实现是NVIDIA_GPU_Computing_SDK.我的OpenCL头文件驻留在此路径中/opt/NVIDIA_GPU_Computing_SDK/OpenCL/common/inc
.通过在编译代码时添加此路径,我可以通过linux终端运行OpenCL程序.但现在我想为此代码编写CMake文件.由于此Path问题,CMake文件适用于C程序,但不适用于OpenCL程序.在终端,我以前输入$cmake .
,之后$make
,它将搜索由cmake创建的Makefile,现在我的错误是在输入命令后make
fatal error: CL/cl.h: No such file or directory!
Run Code Online (Sandbox Code Playgroud)
现在告诉我如何将此头文件包含到CMake文件中?
您需要将这些行放入CMakeLists.txt:
include_directories(/opt/NVIDIA_GPU_Computing_SDK/OpenCL/common/inc)
link_directories(/opt/NVIDIA_GPU_Computing_SDK/OpenCL/common/<lib or something similar>)
add_executable(yourexe src1.c ...)
target_link_libraries(yourexe OpenCL)
Run Code Online (Sandbox Code Playgroud)
但要注意它不可移植,因为OpenCL SDK可以在另一台机器上的其他地方.正确的方法是使用FindOpenCL.cmake
模块.
归档时间: |
|
查看次数: |
12127 次 |
最近记录: |