2014-02-18 27 views
1

我试图编译OpenCL的样本代码,但我收到以下错误找不到opencl的库?

/usr/bin/ld: cannot find -lOpenCL 

在/ usr /斌/劳工处:找不到-loclUtil_x86_64 在/ usr /斌/劳工处:找不到-lshrutil_x86_64 collect2 :错误:1

我使用基于英特尔的机器* [../../..//OpenCL//bin//linux/release/DeviceQuery]错误:LD返回1个退出状态 化妆。 .. 我的文件是 EXECUTABLE := DeviceQuery CCFILES := devQury.cpp include ../common/common_opencl.mk

任何帮助将是很大的帮助

感谢, 的Piyush

回答

1

你无论从英特尔或AMD安装OpenCL的SDK?如果不是,那么也许你应该遵循these instructions。如果您安装了SDK,那么makefile可能会丢失-L ...在编译器命令行中,其中...是OpenCL SDK中lib文件夹的路径,该路径应包含文件libOpenCL.a或类似内容。

2

确保OpenCL库(libOpenCL.so)存在于/ usr/lib中。这应该由司机来实施,所以你不应该做任何事情。

如果没有,则复制libOpenCL.so存在于您的cuda工具包(lib64)中的上述位置。

sudo cp /usr/local/cuda-7.0/lib64/libOpenCL.so /usr/lib 

此修正错误

/usr/bin/ld: cannot find -lOpenCL 
collect2: error: ld returned 1 exit status