web-dev-qa-db-fra.com

sqlplus: erreur lors du chargement des bibliothèques partagées: libsqlplus.so: impossible d'ouvrir le fichier objet partagé: aucun fichier ou répertoire de ce type

  • echo $PATH me donne le résultat ci-dessous:

/ home/mayank/bin:/usr/lib/lightdm/lightdm:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/jeux :/usr/lib/jvm/Java-7-Oracle/bin:/usr/lib/jvm/Java-7-Oracle/db/bin:/usr/lib/jvm/Java-7-Oracle/jre/bin: /usr/lib/Oracle/12.1/client/bin

  • echo $Oracle_HOME va chercher:

/usr/lib/Oracle/12.1/client

  • echo LD_LIBRARY_PATH donne (définissez /etc/bash.bashrc plus tôt, mais affiche maintenant comme ci-dessous)

LD_LIBRARY_PATH

faire vim pour .bash_profile montre les choses ci-dessous:

[[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm" #
Load RVM into a Shell session *as a function*

LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib
    export LD_LIBRARY_PATH

PATH=$PATH:/usr/local/bin
    export PATH

Malgré la définition du ld_library_path dans le fichier ci-dessus, je ne reçois toujours pas le chemin correct dans env malgré l'exécution de Sudo ldconfig et le redémarrage de ma machine !!

quelle est l'aide que je cherche:

  • régler env vars correctement

  • exécuter sqlplus

La même question existe superutilisateur , mais aucune solution n’y est donnée.

15
user246631

Comme indiqué dans les commentaires, votre bibliothèque se trouve dans /usr/lib/Oracle/12.1/client/lib/, mais votre chemin ne comprend que /usr/lib/Oracle/12.1/client/bin ... vous voyez pourquoi. ' t trouver la bibliothèque?

Vous pouvez développer votre LD_LIBRARY_PATH avec le répertoire /usr/lib/Oracle/12.1/client/lib/ (dans votre fichier .profile ou .environment ou .bash_profile ou (si vous le souhaitez pour tous les utilisateurs) dans le fichier /etc/bash.bash.bashrc. fichier) - Je ne sais pas si sqlplus s’occupe de LD_LIBRARY_PATH - essayez-le.

Pour voir à quoi LD_LIBRARY_PATH est défini, vous devez taper:

echo $LD_LIBRARY_PATH

(notez le $ si vous voulez lire la valeur!)

J'espère que cela t'aides!

17
Wolfgang

Certains fichiers du répertoire /usr/lib/Oracle/12.1/client/lib/ ne sont pas lisibles par d'autres groupes.

cd /usr/lib/Oracle/12.1/client/lib/
chmod +r *

Ensuite, cela fonctionne dans mon environnement.

1
alice