setting LD_LIBRARY_PATH for CUDA
Installing the CUDA toolkit results in the following instructions being printed to the console.
Please make sure your LD_LIBRARY_PATH for 64-bit Linux distributions includes /usr/local/cuda-5.0/lib64:/usr/local/cuda-5.0/lib
OR
for 64-bit Linux distributions add /usr/local/cuda-5.0/lib64 and /usr/local/cuda-5.0/lib to /etc/ld.so.conf and run ldconfig as root
The following code in /etc/profile
had no effect.
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
That is, rebooting and issuing echo $LD_LIBRARY_PATH
showed the variable was not defined.
To try the alternative suggestion, I added the two lines to the file /etc/ld.so.conf
so my file looks like this
include /etc/ld.so.conf.d/*.conf
/usr/local/cuda-5.0/lib64
/usr/local/cuda-5.0/lib
Then I issued:
sudo ldconfig
then
echo $LD_LIBRARY_PATH
Still the environment variable was not set. How do I comply with the CUDA installation instructions shown above?
Add a file with the .conf
extension to /etc/ld.so.conf.d/
that contains the paths to the libraries and then run ldconfig. Be sure to set the permissions and ownership of the file to match the other files in the directory.
This is a system wide solution as opposed to the user specific solution of modifying .bashrc.
On my system I made nvidia.conf
in /etc/ld.so.conf.d/
. The file contains the lines:
/usr/local/cuda-5.0/lib64
/usr/local/cuda-5.0/lib
If you create the file as sudo
then your permissions should be good to go, but my nvidia.conf
is owner/group root and rw-r--r-- (or 644).
Put the following in .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