biblioteca nao localizavel

Iniciado por wmx, 15 de Maio de 2008, 09:35

tópico anterior - próximo tópico

wmx


Galera

Estou instalando um software (chamado ipmosflm) que faz uso da biblioteca libg2c.so.0 . Acontece que a bibioteca está instalada mas o software não consegue acessar:


root@MAD1:/home/visita/Desktop# ./ipmosflm
./ipmosflm: error while loading shared libraries: libg2c.so.0: cannot open shared object file: No such file or directory
root@MAD1:/home/visita/Desktop# sudo apt-get install libg2c0
Reading package lists... Done
Building dependency tree       
Reading state information... Done
libg2c0 is already the newest version.
0 upgraded, 0 newly installed, 0 to remove and 103 not upgraded.
root@MAD1:/home/visita/Desktop# ./ipmosflm
./ipmosflm: error while loading shared libraries: libg2c.so.0: cannot open shared object file: No such file or directory





Como faço para que a biblioteca seja "vista" pelo software?


chapafogu1nho

Tenta mudar o tipo de biblioteca
do seu gerenciador de pacotes...
tipo se tiver brasil
tu coloca
Global..

ou tenta atualizar a dependencia.

Flws.
Computer is like to air-conditioning, not to provide with "Windows" open. hehe

Darcamo

Para saber de quais bibliotecas um programa depende, você pode usar o comando ldd.
Dessa forma,
ldd ./ipmosflm
deve mostrar a localização das bibliotecas que esse programa depende com exceção das que ele não encontrou.

A biblioteca libg2c.so.0 fica em /usr/lib
Na verdade libg2c.so.0 é um link simbólico para a biblioteca libg2c.so.0.0.0 (ao menos aqui no meu Ubuntu 8.04). Se a biblioteca  libg2c.so.0.0.0 existe, mas a  libg2c.so.0 não existe (algo deu errado na instalação e ele não foi criado), então crie o link simbólico manualmente com
cd /usr/lib
sudo ln -s  libg2c.so.0.0.0  libg2c.so.0


Se mesmo com isso o comando ldd ainda não conseguir achar a biblioteca, edite o arquivo ld.so.conf
sudo nano /etc/ld.so.conf
e acrescente /usr/lib no final dele.
Salve o arquivo e depois rode o comando
ldconfig