Sistemas Unix tendem a classificar diferentes tipos de arquivos em diferentes diretórios. Existem diretórios separados para executáveis (por exemplo, /usr/bin ), documentação (por exemplo, /usr/man , /usr/info ,…), bibliotecas nativas (por exemplo, /usr/lib ), bibliotecas Perl (por exemplo, /usr/lib/perl5 ) e assim por diante. Correspondentemente, existem diferentes variáveis de caminho, todas com a mesma sintaxe (lista de diretórios separados por dois pontos): PATH para executáveis, MANPATH para páginas man, LD_LIBRARY_PATH para bibliotecas nativas, PERL5LIB para bibliotecas Perl e assim por diante.
Para bibliotecas nativas, há bibliotecas padrão do sistema que estão no caminho de pesquisa, sejam elas mencionadas na variável de ambiente LD_LIBRARY_PATH ou não. No Linux, esses diretórios são listados em /etc/ld.so.conf (também, /lib e /usr/lib estão sempre no caminho de pesquisa).
Você tem várias possibilidades:
- Adicione
/home/mri/Software/BRAINS3/lib a /etc/ld.so.conf (específicas do Linux, outras variantes unix podem ter um arquivo semelhante). Execute ldconfig para que a alteração tenha efeito.
- Adicione
export LD_LIBRARY_PATH=/home/mri/Software/BRAINS3/lib em /etc/profile (aplica-se a todos os usuários) ou em ~/.profile (aplica-se somente a você).
-
Crie um script de wrapper:
#!/bin/sh
export LD_LIBRARY_PATH=/home/mri/Software/BRAINS3/lib
exec /home/mri/Software/BRAINS3/bin/brains3 "$@"
-
Crie links simbólicos para as bibliotecas em /home/mri/Software/BRAINS3/lib em outro diretório no caminho de pesquisa:
ln -s /home/mri/Software/BRAINS3/bin/brains3/lib*.so.* /usr/local/lib/
¹ LD_LIBRARY_PATH é o nome da maioria das variantes unix, mas o Mac OS X usa DYLD_LIBRARY_PATH .