A resolução do Symlink é um recurso aqui. Ao resolver libblas.so
para libblas.so.3
, o executável resultante é fixado em uma versão específica. (Alterações na versão so, ou seja, o 3
in libblas.so.3
ocorre quando a interface binária da biblioteca é alterada de forma incompatível, portanto, isso é desejado.
O problema parece ser que seu sistema de destino não tem um libblas.so.3
, então eu recomendo o seguinte:
- Verifique se seu aplicativo está vinculado a
libblas.so.3
, como já é. -
No sistema de destino, crie um link simbólico a partir do libblas.so real para o nome
libblas.so.3
requerido, de modo que esse link simbólico seja encontrado no LD_LIBRARY_PATH:mkdir ./mylib ln -s /usr/lib/libblas.so ./mylib/libblas.so.3 LD_LIBRARY_PATH=$PWD/mylib:$LD_LIBRARY_PATH ./myexecutable