2

我正在尝试在 Win8 上的 Cygwin (gcc/g++ 4.7.3-1) 下使用 OpenCL 编译一些东西。但它失败了,说,没有OpenCL,但有(Nvidia SDK):

/usr/lib/gcc/i686-pc-cygwin/4.7.3/../../../../i686-pc-cygwin/bin/ld: cannot find -lOpenCL
collect2: Fehler: ld returns 1
error: command 'g++' failed with exit status 1

有人可以帮忙吗?

4

1 回答 1

4

除了库名称之外,您可能还需要告诉 gcc 在哪里可以找到该库。这可以通过单个命令行选项以这种方式完成(以 AMD OpenCL 为例):

gcc hello.c "%AMDAPPSDKROOT%/lib/x86_64/"libOpenCL.a

如果使用 -l 选项,还需要使用 -L 选项来扩展库搜索路径以包含 OpenCL 目录:

gcc hello.c -L"%AMDAPPSDKROOT%/lib/x86_64/" -lOpenCL
于 2013-07-19T02:13:58.973 回答