我将尝试清楚而简洁地解决这个问题,因为我发现对于那些开始使用unix或不熟悉编译和链接的人来说,这不是一个很好的答案。
这个问题与动态链接有关,可以用两种方法解决。第一个是通过设置LD_LIBRARY_PATH环境变量。假设cuda安装在/usr/local/cuda/中,只需在环境文件/etc/environment中添加:LD_LIBRARY_PATH=/usr/local/cuda/
或者在bashrc中:export LD_LIBRARY_PATH=/usr/local/cuda/lib64/
这个解决方案不是unix专家推荐的(我不是刚刚在互联网上读到的,我遵循的是linux专家)。所以我找到的解决方案很简单,修改linux ld软件默认搜索库的路径。要做到这一点,只需做(您必须以根用户的身份):cd /etc/ld.so.conf.d/
然后选择示例并编辑:vi libc.conf
在此文件中,只需将路径添加到lib64根目录,如下所示:/usr/local/cuda/lib64/
你会在文件中得到这样的信息:\# libc default configuration
/usr/local/lib
/usr/local/cuda/lib64/
然后就跑:sudo ldconfig
希望这个答案能帮助那些开始看编程,或者使用高级语言如python的人,这些语言使用下面的C代码(像theano那样),并且不熟悉编译,linkig。。。