Criando bibliotecas C ++ estáticas e compartilhadas
Eu gostaria de construirbibliotecas estáticas e compartilhadas em um projeto.
Eu sei que as bibliotecas compartilhadas precisam ser criadas a partir de objetos compilados com -fpic para obter o código independente da posição, enquanto a biblioteca estática não precisa disso. Tudo bem e posso criar uma biblioteca compartilhada ou estática.
Eu não gostaria de compilar minha fonte duas vezes para obter os diferentes arquivos de objetos, então como isso geralmente é feito? Eu licomo obter uma biblioteca compartilhada com base em uma estática. No entanto, o exemplo mostra a biblioteca estática sendo construída com -fpic. É este o caminho a percorrer? Existem coisas para estar ciente disso?
Tem algumaabordagem comum compilar bibliotecas estáticas e compartilhadas? Por exemplo. primeiro estático e com base na lib, uma versão compartilhada é criada?
Estou interessado em saber se existem abordagens diferentes para isso e o que considerar ao selecionar.
Estou usando o gcc4.4 no Linux.
Desde já, obrigado!