sqlplus: erro ao carregar bibliotecas compartilhadas: libsqlplus.so: não é possível abrir o arquivo de objeto compartilhado: esse arquivo ou diretório não existe

sqlplus: erro ao carregar bibliotecas compartilhadas: libsqlplus.so: não é possível abrir o arquivo de objeto compartilhado: esse arquivo ou diretório não existe
  • echo $PATHme dá o resultado abaixo:

/home/mayank/bin:/usr/lib/lightdm/lightdm:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games :/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_HOMEbusca:

/usr/lib/oracle/12.1/client

  • echo LD_LIBRARY_PATHdá (definido /etc/bash.bashrcanteriormente, mas agora está sendo exibido como abaixo)

LD_LIBRARY_PATH

fazendo vimpara .bash_profileshows abaixo as coisas definidas:

[[ -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

Apesar de configurar o ld_library_patharquivo acima, ainda não estou obtendo o caminho correto, envapesar de executar sudo ldconfige reiniciar minha máquina!!

que ajuda estou procurando:

  • definir env vars corretamente

  • execute sqlplus

A mesma pergunta existesuperusuário, mas nenhuma solução é dada lá.

Responder1

Como visto nos comentários, sua biblioteca está localizada em /usr/lib/oracle/12.1/client/lib/, mas seu caminho inclui apenas /usr/lib/oracle/12.1/client/bin... você vê por que isso pode' não encontrei a biblioteca?

Você pode expandir seu LD_LIBRARY_PATH com o diretório /usr/lib/oracle/12.1/client/lib/ (em seu .profile ou .environment ou .bash_profile ou (se desejar para todos os usuários) em /etc/bash.bashrc arquivo) - não sei se o sqlplus cuida do LD_LIBRARY_PATH - apenas tente.

Para ver o que LD_LIBRARY_PATH está definido você deve digitar:

echo $LD_LIBRARY_PATH

(observe o $ se quiser ler o valor!)

Espero que isto ajude!

Responder2

Existem alguns arquivos no /usr/lib/oracle/12.1/client/lib/diretório que não podem ser lidos por outros grupos.

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

Então funciona no meu ambiente.

informação relacionada