OpenSceneGraph não consegue localizar a dependência da biblioteca

0

Concluí as instruções de instalação do OpenSceneGraph, incluindo a instalação de OpenThreads a partir do código-fonte. No entanto, o osgviewer não consegue localizar o arquivo necessário para ser executado.

$ /usr/local/bin/osgviewer
/usr/local/bin/osgviewer: error while loading shared libraries: libOpenThreads.so.21: cannot open shared object file: No such file or directory
$ ls -l /usr/local/lib64 | grep libOpenThreads
lrwxrwxrwx. 1 root root      20 Jul 13 16:55 libOpenThreads.so -> libOpenThreads.so.20
lrwxrwxrwx. 1 root root      23 Jul 13 16:55 libOpenThreads.so.20 -> libOpenThreads.so.3.3.0
lrwxrwxrwx. 1 root root      23 Jul 13 15:12 libOpenThreads.so.21 -> libOpenThreads.so.3.3.1
-rwxr-xr-x. 1 root root   49688 Jul 13 16:55 libOpenThreads.so.3.3.0
-rwxr-xr-x. 1 root root   44464 Jul 13 02:59 libOpenThreads.so.3.3.1

Existe uma maneira de determinar onde este programa está procurando a biblioteca para que eu possa fazer um symlink? Está ligado a um caminho de caminho?

    
por Keegan Dent 14.07.2018 / 06:18

1 resposta

2

Para ver quais diretórios estão no caminho de pesquisa da biblioteca.

ldconfig -v 2>/dev/null | grep -v ^$'\t'

O mais provável / usr / lib já está no caminho de pesquisa da biblioteca.

Em seguida, crie um link simbólico.

cp -s /usr/local/lib64/libOpenThreads.so.21 /usr/lib

Se você quiser adicionar / usr / local / lib64 ao caminho de busca da biblioteca, adicioná-lo à /etc/ld.conf.so e executar ldconfig .

    
por 14.07.2018 / 10:55