3 votes

Impossible de définir LD_LIBRARY_PATH dans /etc/profile.d

J'ai installé nVidia CUDA 7.5 dans Ubuntu Mate 16.04. Cependant, j'ai des difficultés à configurer les variables d'environnement.

Voici le nvidia-settings.sh que j'ai dans /etc/profile.d dossier :

export PATH=/usr/local/cuda-7.5/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda-7.5/lib64:/usr/lib/nvidia-361:$LD_LIBRARY_PATH
export LIBRARY_PATH=/usr/lib/nvidia-361:/usr/local/cuda-7.5/lib64:$LIBRARY_PATH

Cependant, après le redémarrage, le LD_LIBRARY_PATH n'était pas automatiquement disponible. Voici la sortie du terminal qui montre le problème :

ponir@mate:~$ echo $LD_LIBRARY_PATH

ponir@mate:~$ echo $LIBRARY_PATH
/usr/lib/nvidia-361:/usr/local/cuda-7.5/lib64:
ponir@mate:~$ export LD_LIBRARY_PATH=/usr/local/cuda-7.5/lib64:/usr/lib/nvidia-361:$LD_LIBRARY_PATH
ponir@mate:~$ echo $LD_LIBRARY_PATH
/usr/local/cuda-7.5/lib64:/usr/lib/nvidia-361:
ponir@mate:~$ 

Mais après avoir exécuté export LD_LIBRARY_PATH=/usr/local/cuda-7.5/lib64:/usr/lib/nvidia-361:$LD_LIBRARY_PATH dans le Terminal, je pourrais obtenir cette variable.

Quel pourrait être le problème ? Merci.

5voto

Zanna Points 65764

De Page d'aide du wiki Ubuntu

Note : Vous ne pouvez définir cette variable d'environnement qu'à l'intérieur d'un shell interactif. Shell interactif. [ie un terminal ] Depuis Ubuntu 9.04 Jaunty Jackalope, LD_LIBRARY_PATH ne peut pas être défini dans être défini dans les fichiers $HOME/.profile, /etc/profile, ni /etc/environment. Vous devez utiliser les fichiers de configuration /etc/ld.so.conf.d/*.conf. Voir Launchpad bug #366728 pour plus d'informations.

Comment le réparer :

cd /etc/ld.so.conf.d

Créez un fichier avec le .conf extension ici

sudo nano cuda.conf

Ajoutez-y les chemins sous forme de deux lignes

/usr/local/cuda-7.5/lib64
/usr/lib/nvidia-361

Sauvegarder et quitter. Vérifiez avec ls -l que le fichier a la même propriété et les mêmes permissions que les autres dans le répertoire, ils devraient l'être :

-rw-r--r-- 1 root root

Ensuite, exécutez

ldconfig

Cela ne définit pas la variable env, mais inclut les bibliothèques de manière appropriée pour que CUDA fonctionne.

0voto

J.T. Points 109

Tout d'abord, vous devez avoir installé cuda via apt-get.

Cela dit, lorsque vous compilez ce genre de choses à partir du code source, vous devez souvent exécuter la commande suivante :

 sudo ldconfig

S'il n'y a pas de raison d'avoir une version compilée installée et si la version disponible depuis apt-get est suffisante pour vos besoins, je suggérerais de désinstaller la version compilée et d'installer la version depuis apt-get à la place.

Exécutez les commandes suivantes pour plus d'informations :

sudo apt-get update 
apt-cache search cuda | grep -i cuda

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X