NVCC CUDA交叉编译找不到“ -lcudart”

问题描述 投票:1回答:5

我已经在Ubuntu虚拟机上安装了CUDA 5.0和NVCC,甚至在编译基本CUDA C程序时都遇到了问题。错误如下:

user@ubuntu:~/CUDA$ nvcc helloworld.cu -o helloworld.o -target-cpu-arch=ARM -ccbin=/usr/bin/arm-linux-gnueabi-gcc-4.6 --machine=32
/usr/lib/gcc/arm-linux-gnueabi/4.6/../../../../arm-linux-gnueabi/bin/ld: skipping incompatible /usr/local/cuda-5.0/bin/../lib/libcudart.so when searching for -lcudart
/usr/lib/gcc/arm-linux-gnueabi/4.6/../../../../arm-linux-gnueabi/bin/ld: skipping incompatible /usr/lib/libcudart.so when searching for -lcudart
/usr/lib/gcc/arm-linux-gnueabi/4.6/../../../../arm-linux-gnueabi/bin/ld: cannot find -lcudart
collect2: ld returned 1 exit status

我已经尝试研究此问题并遇到了以下链接:skipping incompatible libcudart.so when searching for -lcudart

因此,我遵循了该链接上提供的建议并添加了

 /usr/local/cuda-5.0/lib64 

/usr/local/cuda-5.0/lib 

到我的LD_LIBRARY_PATH环境变量,现在这是]的结果。

  user@ubuntu:~/CUDA$ echo $LD_LIBRARY_PATH 
  /usr/local/cuda-5.0/lib:/usr/local/cuda-5.0/lib64
  user@ubuntu:~/CUDA$ 

但是,问题仍然存在,请提供帮助。

我已经在Ubuntu虚拟机上安装了CUDA 5.0和NVCC,甚至在编译基本CUDA C程序时都遇到了问题。错误如下:user @ ubuntu:〜/ CUDA $ nvcc helloworld.cu -o ...

linux cuda ld nvcc
5个回答
1
投票

CUDA 5.5是第一个支持ARM v7的CUDA版本。您安装的CUDA 5.0工具包不支持,这就是为什么它找不到正确版本的CUDA运行时库的原因。


0
投票

事实证明,我从NVIDIA使用的CUDA安装程序不允许我为我的CARMA板进行交叉编译,但必须从制造商SECO下载。


0
投票

[可能是Cuda Toolkits的问题。第一个Cuda Toolkit 5.0不支持Arm。第二个Cuda Toolkit 6.5交叉编译丢失了libcudart.so。我解决了这个问题,是从Arm的Cuda Toolkit 6.5复制​​libcudart.so。


0
投票

〜/ .bashrc中添加以下内容


-3
投票

添加/etc/ld.so.conf此:

© www.soinside.com 2019 - 2024. All rights reserved.