g++(nvcc) 链接库文件

当编译CUDA源代码遇到'cannot open shared object file'错误时,问题出在库文件路径不正确或版本不兼容。解决办法包括指定库文件目录(-L),使用正确的库(-lcudart),处理32位与64位不兼容问题,以及通过ldconfig更新动态链接库缓存。创建符号连接或修改/etc/ld.so.conf.d/配置文件来解决问题。
摘要由CSDN通过智能技术生成

查了一晚上的资料终于把库文件给链接上了,这里做一下总结.

编译CUDA源程序发现cannotopen shared object file错误,后来发现cuda所要使用的库文件放在/usr/local/cuda目录下,而不是在默认的路径下,于是就在编译时用编译选项指定的库文件的目录,和所使用的库如下所示:

-L/usr/local/cuda/lib-lcudart ( 这里要说明我所要使用的库是libcudart.so.4)

设置的这个选项后又出现/usr/bin/ld :skippingincompatible /usr/local/cuda/lin/libcudart.so的错误,网上一查原来是因为我的机器是64位于该目录下32位的版本不兼容,cuda目录下有两个库目录liblib64,分别都有相应的文件,于是就把目录改成-L/usr/local/cuda/lib64

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值