O arquivo libsqlite3.so
é apenas um link simbólico para o nome do arquivo de biblioteca com versão completa, libsqlite3.so.0.8.6
. Em tempo de execução, o carregador dinâmico só conhece a biblioteca totalmente versionada. Isso é verdade para a maioria das bibliotecas compartilhadas. Existem algumas bibliotecas que não são versionadas e estão disponíveis apenas como libnspr4.so
, por exemplo. No entanto, essas bibliotecas também são empacotadas corretamente, conforme apropriado.
Os programas não devem tentar copiar o link sem versão da biblioteca. Se quiserem fazer isso, eles devem usar o nome do arquivo libsqlite3.so.0
, por exemplo, que está instalado no pacote da biblioteca binária, em vez do pacote -dev fornecido. Desta forma, o programa continuará funcionando se o sqlite3 quebrar a compatibilidade da API em algum momento e houver um libsqlite3.so.1
. Usar libsqlite3.so.0
garantiria que o programa usaria a API da biblioteca na qual foi escrita para trabalhar.