Tu définis la variable d'environnement LD_LIBRARY_PATH=<le chemin des libs que tu empaquetes avec ton soft> dans le shell qui va exécuter le programme que tu veux lancer.
Ainsi, lorsque le programme va vouloir charger des librairies, il va d'abord les chercher dans les répertoires indiqués dans LD_LIBRARY_PATH. Si il ne trouve pas les libs qui l'intéresse, il va les chercher dans les libraires du système (définit par /etc/ldconfig il me semble).
Tu peux même créer un "wrapper" qui fait le boulot à ta place.
Exemple d'un soft ("toto") que tu installes dans ton $HOME. L'exécutable à lancer est toto/bin/toto :
[^] # Re: Existe ?
Posté par Olivier (site web personnel) . En réponse à la dépêche CDE : un outil pour le déploiement de binaires sans installation de dépendances. Évalué à 1.
Ainsi, lorsque le programme va vouloir charger des librairies, il va d'abord les chercher dans les répertoires indiqués dans LD_LIBRARY_PATH. Si il ne trouve pas les libs qui l'intéresse, il va les chercher dans les libraires du système (définit par /etc/ldconfig il me semble).
Tu peux même créer un "wrapper" qui fait le boulot à ta place.
Exemple d'un soft ("toto") que tu installes dans ton $HOME. L'exécutable à lancer est toto/bin/toto :
toto/
toto/bin/
toto/bin/toto
toto/lib/
toto/lib/toto.so
Tu te crées un "wrapper" toto/bin/toto.sh , qui fait cela :
#!/bin/sh
LD_LIBRARY_PATH=~/toto/lib/
exec ~/toto/bin/toto
Et tu lances ~/toto/bin/toto.sh