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