J'ai un script shell pour configurer certaines variables d'environnement et lancer le programme que j'envoie en argument:
export PATH=$HOME/local/bin:$PATH
export LD_LIBRARY_PATH=$HOME/local/lib:$LD_LIBRARY_PATH
export TESTER="MY TEST VAR"
$@
Quand j'utilise ceci pour appeler bash
par exemple ça marche:
kjfletch@flatbed:~$ envrun.sh bash
kjfletch@flatbed:~$ echo $LD_LIBRARY_PATH
/home/kjfletch/local/lib:
kjfletch@flatbed:~$ echo $TESTER
MY TEST VAR
Quand je l' utilise pour appeler un terminal ( xterm
, aterm
...) ma LD_LIBRARY_PATH
obtient unset:
kjfletch@flatbed:~$ echo $LD_LIBRARY_PATH
kjfletch@flatbed:~$ echo $TESTER
MY TEST VAR
Pourquoi cela arrive-t-il? Comment puis-je arrêter cela? (J'utilise Debian 5.0)
Mise à jour
Mon terminal n'appelle pas bash comme identifiant:
kjfletch@flatbed:~$ echo $0
bash
My LD_LIBRARY_PATH
n'apparaît dans aucun des fichiers de démarrage de bash (à l'exception de .bash_history et ~ / .profile n'existe pas.):
kjfletch@flatbed:~$ grep "LD" ~/.bash*
kjfletch@flatbed:~$ grep "LD" /etc/bash.bashrc
kjfletch@flatbed:~$ grep "LD" /etc/profile