为 CUDA 设置 LD_LIBRARY_PATH

H2O*_*aCl 14 cuda

安装 CUDA 工具包会导致以下说明打印到控制台。

请确保 64 位 Linux 发行版的 LD_LIBRARY_PATH 包括 /usr/local/cuda-5.0/lib64:/usr/local/cuda-5.0/lib

或者

对于 64 位 Linux 发行版,将 /usr/local/cuda-5.0/lib64 和 /usr/local/cuda-5.0/lib 添加到 /etc/ld.so.conf 并以 root 身份运行 ldconfig

以下代码/etc/profile无效。

if [ -z "$LD_LIBRARY_PATH" ]; then    
  LD_LIBRARY_PATH=/usr/local/cuda-5.0/lib64:/usr/local/cuda-5.0/lib
else
  LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda-5.0/lib64:/usr/local/cuda-5.0/lib
fi
export LD_LIBRARY_PATH
Run Code Online (Sandbox Code Playgroud)

也就是说,重新启动和发布echo $LD_LIBRARY_PATH显示未定义变量。

为了尝试替代建议,我将两行添加到文件中,/etc/ld.so.conf因此我的文件如下所示

include /etc/ld.so.conf.d/*.conf 
/usr/local/cuda-5.0/lib64
/usr/local/cuda-5.0/lib
Run Code Online (Sandbox Code Playgroud)

然后我发出:

sudo ldconfig

然后

echo $LD_LIBRARY_PATH

仍然没有设置环境变量。我如何遵守上面显示的 CUDA 安装说明?

Log*_*eld 19

添加一个.conf扩展名为/etc/ld.so.conf.d/ 包含库路径的文件,然后运行 ​​ldconfig。确保设置文件的权限和所有权以匹配目录中的其他文件。

这是一个系统范围的解决方案,而不是修改 .bashrc 的用户特定解决方案。

在我的系统上,我制作nvidia.conf/etc/ld.so.conf.d/. 该文件包含以下几行:

/usr/local/cuda-5.0/lib64
/usr/local/cuda-5.0/lib
Run Code Online (Sandbox Code Playgroud)

如果您创建文件,sudo那么您的权限应该很好,但我nvidia.conf是所有者/组 root 和 rw-r--r--(或 644)。

  • 我的理解是它以不需要设置路径变量的方式解决了问题。因此,如果“不起作用”意味着未设置变量,那么可以肯定。如果“不起作用”意味着 CUDA 不起作用,那么需要更多关于您的问题的信息,因为这在我的设置中启用(并继续启用)CUDA 开发。 (2认同)

H2O*_*aCl 12

将以下内容放入.bashrc.

if [ -z $LD_LIBRARY_PATH ]; then
  LD_LIBRARY_PATH=/usr/local/cuda-5.0/lib64:/usr/local/cuda-5.0/lib
else
  LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda-5.0/lib64:/usr/local/cuda-5.0/lib
fi
export LD_LIBRARY_PATH
Run Code Online (Sandbox Code Playgroud)