【问题标题】:Cannot find -lcutil even though all the paths are correct即使所有路径都正确,也找不到 -lcutil
【发布时间】:2011-10-14 16:46:10
【问题描述】:

在编译一些 CUDA 代码时,我收到错误消息,即使我检查了路径是否正确,也无法找到 libcutil

示例

$ nvcc mycudacode.cu -lcutil -o mycudaproject -I ~/NVIDIA_GPU_Computing_SDK/C/common/inc -L ~/NVIDIA_GPU_Computing_SDK/C/lib
/usr/bin/ld: cannot find -lcutil
compilation terminated.

即使:

$ ~/NVIDIA_GPU_Computing_SDK/C/lib$ ls
libcutil_x86_64.a  libparamgl_x86_64.a  librendercheckgl_x86_64.a

【问题讨论】:

  • 错误是预处理器错误 - 找不到cutil.h。与图书馆无关。检查它的位置。
  • 对不起,我在编译这个问题时从我的 shell 复制了错误的行。
  • 再次阅读错误信息。您要求链接一个名为 libcutil.a 的库。你看到一个名为libcutil.a 的库吗?
  • 你可能想做:nvcc mycudacode.cu -lcutil -o mycudaproject -I ~/NVIDIA_GPU_Computing_SDK/C/common/inc -L ~/NVIDIA_GPU_Computing_SDK/C/lib ~/NVIDIA_GPU_Computing_SDK/C/lib/libcutil_x86_64.a

标签: linker cuda


【解决方案1】:

我尝试了以下方法:

cp $(HOME)/NVIDIA_GPU_Computing_SDK/C/lib/libcutil_x86_64.a /usr/local/cuda/lib/libcutil.a

它有效。

【讨论】:

  • 将文件复制到/usr/local/ 有什么好处?无论如何都要 +1
【解决方案2】:

来自NVIDIA Forums

在 linux 64 位上,必须将 libcutil_x86_64.a 重命名为 libcutil.a

所以cd 进入文件夹$(HOME)/NVIDIA_GPU_Computing_SDK/C/lib/(或您安装CUDA 的位置)并输入:cp libcutil_x86_64.a libcutil.a

免责声明

由于我已经两次偶然发现这个问题,所以我将问题和答案添加为文档形式。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-07-16
    • 2020-03-09
    • 1970-01-01
    • 1970-01-01
    • 2017-05-26
    • 1970-01-01
    • 2016-08-10
    相关资源
    最近更新 更多