bibliotecas compartilhadas ELF

0

Eu tenho uma pergunta sobre o uso de bibliotecas no Linux. Vamos dizer que eu tenho um programa chamado MYPROG e duas bibliotecas LIBABC.SO e LIBXYZ.SO. MYPROG carrega o módulo LIBABC.SO com "dlopen RTLD_NOW". "dlopen" falha porque eu estou usando funções de LIBXYZ.SO e MYPROG não foi vinculado com LIBXYZ.SO. Posso vincular uma biblioteca compartilhada a outra biblioteca compartilhada?

    
por Kouros 13.06.2014 / 20:09

2 respostas

0

Encontrei a resposta:

gcc -fpic obj1.c gcc -fpic obj2.o gcc -shared -o libABC.so-lXYZ obj1.o obj2.o

    
por Kouros 19.06.2014 / 21:01
0

Eu acredito que sim.

A principal importância é que todas as funções que você usa em suas aplicações são definidas. Se as definições dessas funções (as funções que estão na, digamos, biblioteca A e não em seu aplicativo) se referirem à biblioteca B, então é responsabilidade da biblioteca A vincular-se à biblioteca B.

    
por saiarcot895 13.06.2014 / 20:22