Estou construindo um pacote runtime-shared-library libfoo0.deb
onde 0
aqui está uma versão principal do pacote e aderindo às convenções de nomenclatura especificadas na política Debian .
O problema é que eu quero construir outra biblioteca compartilhada libbar
dependendo do pacote de biblioteca compartilhada em tempo de execução libfoo0
. Então estou pensando em adicionar uma estrofe depende, mas não tenho certeza se é necessário especificar uma versão, como
Depends: libfoo0 (= 0.0.4)
Aqui está a 0.0.4
versão de libfoo0-dev.deb
(pacote contendo arquivos de desenvolvimento/links simbólicos necessários em /usr/lib/
) com a qual o arquivo libbar
foi construído. O problema que vejo é que proibiria os usuários de atualizar libfoo0
.
Pergunta: Desde que olibfoo0
binário seja compatível com versões anteriores da biblioteca principal, não é necessário especificar uma dependência na versão exata delibfoo0
uma biblioteca/binário com a qual foi criada?
Se sua compilação inclui
dh_shlibdeps
oudpkg-shlibdeps
(se você estiver usandodh
, isso será resolvido), você deve adicionarto
libbar
'scontrol
e as dependências apropriadas serão adicionadas para você.Você não deve codificar uma versão específica, a menos que as bibliotecas precisem ser atualizadas em lockstep. A ideia é que as bibliotecas com a mesma versão principal sejam compatíveis com versões anteriores, portanto, desde que você tenha uma versão maior ou igual à que você precisa, você deve estar bem. As ferramentas também cuidarão disso para você; pode ser necessário adicionar manualmente um arquivo
shlibs
ou ; IIRC a compilação lhe dirá quando você precisa lidar com isso.symbols
libfoo