Eu estou jogando com bibliotecas do Ubuntu. Eu estou tentando adicionar algumas bibliotecas para /usr/lib/< subdir >/ e
crie alguns proxies para as bibliotecas em /usr/lib/< subdir >/ .
Observe que /usr/lib/< subdir >/ existe em
um dos arquivos em /etc/ld.so.cond.d/ .
Infelizmente, ldconf comportamento parece ser muito estranho e
não-trivial para mim. E é por isso que:
Quando adiciono alguma biblioteca a /usr/lib/< subdir >/ , não é
detectado até adicionar um link simbólico a ele de /usr/lib .
Por quê?
Descobri que muitas vezes as bibliotecas são colocadas em /usr/lib/< subdir >/ em uma forma de trios:
/usr/lib/< subdir >/lib< libname >.so - link simbólico para lib< libname >.so.1
/usr/lib/< subdir >/lib< libname >.so.1 - link simbólico para lib< libname >.so.<version>
/usr/lib/< subdir >/lib< libname >.so.< version > - a biblioteca real
Ok. Para criar um proxy eu decidi remover links simbólicos e adicionar o meu próprio, digamos
/usr/lib/ <subdir >/lib< libname >abc.so - link simbólico para lib< libname >abc.so.1
/usr/lib/< subdir >/lib< libname >abc.so.1 - link simbólico para lib< libname >.so.< version >
E, de repente, quando eu corro sudo ldconfig para atualizar essas coisas, ele cria
/usr/lib/< subdir >/lib< libname >.so.1 que aponta para /usr/lib/< subdir >/lib< libname >abc.so.1.
Eu não consigo entender a lógica.
Tags ld