Você deve estar lendo algumas cópias desatualizadas das páginas de manual (ênfase adicionada):
-rpath = dir
Adiciona um diretório ao caminho de pesquisa da biblioteca de tempo de execução . Isso é usado
ao vincular um executável ELF a objetos compartilhados. Todos os
argumentos -rpath são concatenados e passados para o vinculador de tempo de execução , que os
usa para localizar objetos compartilhados em tempo de execução.
vs.
-L searchdir
--library-path = searchdir
Adiciona o caminho searchdir à lista de caminhos que ld pesquisará por
bibliotecas de arquivo e scripts de controle ld.
Portanto, -L
informa ld
onde procurar bibliotecas para vincular ao vincular. Você usa isso (por exemplo) quando está construindo com base em bibliotecas em sua árvore de construção, que serão colocadas nos caminhos de biblioteca normais do sistema por make install
. --rpath
, por outro lado, armazena esse caminho dentro do executável, para que o vinculador dinâmico de tempo de execução possa localizar as bibliotecas. Você usa isso quando suas bibliotecas estão fora do caminho de pesquisa da biblioteca do sistema.
-rpath-link
?