在研究了在我的新Fedora19系统上安装CUDA5.0之后,我发现CUDA5.5是一个更好的选择,因为它是以rpm格式出现的。我按照安装说明找到了here,在我尝试编译示例之前,一切都很顺利。首先,它将示例安装到/usr/local/cuda/ samples,我必须确保我的LD_LIBRARY_PATH包含/usr/local/cuda/lib (不仅仅是5.5版本),但是当我尝试运行'make all‘命令时,我得到了以下两个错误。
../../common/inc/exception.h: In constructor ‘Exception<Std_Exception>::Exception()’:
../../common/inc/exception.h:129:94: warning: delegating constructors only available with -std=c++11 or -std=gnu++11 [enabled by default]
Exception<Std_Exception>::Exception() :我还以为C++11是默认版本呢?然后,当我尝试编译matrixMulDrv时,我得到了以下错误,这真的没有意义:
/usr/local/cuda-5.5/bin/nvcc -ccbin g++ -m64 -o matrixMulDrv matrixMulDrv.o -L/usr/lib64/nvidia -lcuda
/bin/ld: cannot find -lcuda
collect2: error: ld returned 1 exit status我想知道其他人是否也有类似的问题。我已经迁移到5.5,这样我就可以使用当前的gcc编译器(4.8.1)。当我查看/usr/lib64/nvidia时,我看到了假设需要的所有文件,包括libcuda.so.1。还有人看过这个吗?
发布于 2013-07-20 12:49:34
带有GCC 4.7.2/GLIBC 2.16的Fedora 18是用于CUDA5.5RC的officially supported distro。Fedora 19不是,也没有任何迹象表明支持GCC 4.8.x。我对你遇到麻烦并不感到惊讶。您在/usr/lib64/nvidia中看到的libcuda.so链接到了与most likely on your machine (2.17)版本不同的GLIBC2.16版本。
我能想象到的Fedora 19的唯一改进方法是将你的(也就是安装一个备用的) GCC/GLIBC降级到Fedora 18自带的版本,换成Fedora 18可能会更容易。
发布于 2013-07-22 02:52:27
关于第一个问题:
../../common/inc/exception.h: In constructor ‘Exception<Std_Exception>::Exception()’:
../../common/inc/exception.h:129:94: warning: delegating constructors only available with -std=c++11 or -std=gnu++11 [enabled by default]
Exception<Std_Exception>::Exception() :这些消息仅是警告,因此编译仍应继续进行,不会出现任何问题。
关于第二个问题:
/bin/ld: cannot find -lcuda
collect2: error: ld returned 1 exit status查看/usr/lib64/nvidia并确保libcuda.so和libcuda.so.1符号链接都存在并指向libcuda.so.your驱动程序版本。
在我的安装中,由于某种原因,没有创建/usr/lib64/nvidia/libcuda.so符号链接。如果您的也丢失了,则键入(作为根用户):
ln -s /usr/lib64/nvidia/libcuda.so.VERSION /usr/lib64/nvidia/libcuda.so将版本替换为nvidia驱动程序的版本号(例如libcuda.so.319.32)。
这解决了你的问题吗?
发布于 2015-03-05 06:52:22
CUDA is highly specific to the Linux kernel version。例如,CUDA6.5只保证与Fedora 20 kernel 3.12一起使用。
# Install kernel 3.16.2
sudo yum -y install https://kojipkgs.fedoraproject.org/packages/kernel/3.16.2/201.fc20/x86_64/kernel-3.16.2-201.fc20.x86_64.rpm
sudo yum -y install https://kojipkgs.fedoraproject.org/packages/kernel/3.16.2/201.fc20/x86_64/kernel-devel-3.16.2-201.fc20.x86_64.rpm
sudo yum -y install libvdpau-devel
sudo reboot
# Install cuda 6.5
wget http://developer.download.nvidia.com/compute/cuda/6_5/rel/installers/cuda_6.5.14_linux_64.run
sudo bash cuda_6.5.14_linux_64.run --override将内核降级以匹配CUDA System Requirements中指定的版本会很有帮助。
https://stackoverflow.com/questions/17756221
复制相似问题