Provided by: debhelper_13.24.2ubuntu1_all bug

NOME

       dh_makeshlibs - cria automaticamente o ficheiro shlibs e chama dpkg-gensymbols

RESUMO

       dh_makeshlibs [opções do debhelper] [-mmajor] [-V[dependências]] [-n] [-Xitem] [-- parâmetros]

DESCRIÇÃO

       dh_makeshlibs é um programa debhelper que sonda automaticamente por bibliotecas partilhadas, e gera um
       ficheiro shlibs para as bibliotecas que encontra.

       Também assegura que o ldconfig é invocado durante a instalação e remoção quando encontra bibliotecas
       partilhadas. Desde o debhelper 9.20151004, isto é feito via um trigger do dpkg. Nas versões mais antigas
       do debhelper, dh_makeshlibs seria geralmente um script de maintainer para este objetivo.

       Desde o debhelper 12.3, dh_makeshlibs irá por predefinição adicionar uma linha udeb adicional para udebs
       no ficheiro shlibs, quando o udeb tem o mesmo nome que o deb seguido por um sufixo "-udeb" (ex. se o deb
       for chamado "libfoo1", então o debhelper irá auto-detectar o udeb se ele for chamado "libfoo1-udeb"). Por
       favor use as opções --add-udeb e --no-add-udeb abaixo quando esta auto-detecção é insuficiente.

       Se você usou anteriormente --add-udeb e está a considerar migrar para a utilização da nova funcionalidade
       de auto-detecção em 12.3, então por favor lembre-se de testar que os ficheiros DEBIAN/shlibs resultantes
       são os esperados. Existem alguns casos conhecidos, onde a auto-detecção é insuficiente. Estes incluem
       quando o udeb contem ficheiros biblioteca de múltiplos pacotes deb regulares ou quando os pacotes não
       seguem a convenção de nomes esperada.

FICHEIROS

       debian/pacote.shlibs
           Instala  este  ficheiro, se presente, no pacote como DEBIAN/shlibs. Se omitido, o debhelper irá gerar
           um ficheiro shlibs automaticamente se detectar quaisquer bibliotecas.

           Note  que  em  níveis  de  compatibilidade  9  e  anteriores,  este  ficheiro  era   instalado   pelo
           dh_installdeb(1) em vez do dh_makeshlibs.

       debian/pacote.symbols
       debian/pacote.symbols.arquitectura
           Estes  ficheiros  de  símbolos,  se  presentes,  são  passados  para  dpkg-gensymbols(1)  para  serem
           processados e instalados. Use os nomes específicos de arch se precisar de disponibilizar ficheiros de
           símbolos diferentes para diferentes arquitecturas.

OPÇÕES

       -mmajor, --major=major
           Em vez de tentar adivinhar  o  maior  número  da  biblioteca  com  o  objdump,  usa  o  maior  número
           especificado  após  o  parâmetro  -m. Isto é muito menos útil do que costumava ser, de volta aos maus
           velhos tempos quando este programa olhava para os nomes de ficheiro das bibliotecas em vez de usar  o
           objdump.

       -V, -Vdependências
       --version-info, --version-info=dependências
           Se  um  ficheiro  shlibs  for  gerado por este programa, esta opção controla que versão será usada na
           relação de dependência.

           Em compatibilidade 12  e  posterior,  dh_makeshlibs  usa  por  predefinição  -VUpstream-Version.   Em
           compatibilidade 11 e anterior o comportamento predefinido é como -VNone.

           A ferramenta dh_makeshlibs pode gerar dependências em três variantes:

           -VUpstream-Version
               A  dependência  será  "packagename  (>= packageversion)".  Note que Upstream-Version é sensível a
               maiúsculas/minúsculas e tem de ser escrito exactamente como mostrado aqui.

               Esta é uma definição  conservativa  que  assegura  sempre  que  as  dependências  de  bibliotecas
               partilhadas  dos pacotes mais antigos são pelo menos tão justas o quanto precisam de ser (a menos
               que a biblioteca seja inclinada a alterar a ABI sem actualizar o número de versão do autor).

               O reverso da medalha é que os pacotes podem acabar com dependências  muito  apertadas  em  alguns
               casos  (note  que  um  ficheiro  symbols  pode  mitigar  esta  situação).  Isto  é geralmente uma
               inconveniência menor temporária e normalmente muito melhor que a falha  causada  ao  esquecer  de
               inserir a informação de dependência.

               Este formato explícito foi adicionado no debhelper/11.3. Nas versões anteriores, era usado em vez
               disto um -V sem nenhuma informação de dependência (e esse formato ainda funciona).

           -VNone
               A  dependência será "packagename".  Note que None é sensível a maiúsculas/minúsculas e tem de ser
               escrito exactamente como mostrado aqui.

               Este formato é na generalidade não seguro sendo a única excepção se o autor original não estender
               a ABI de maneira nenhuma. No entanto, a maioria dos autores originais melhoram as suas interfaces
               com o passar do tempo e é recomendado que os pacotes usem -VUpstream-Version (ou  um  dos  outros
               formatos de -Vdependencies).

               Alternativamente,  isto  pode  ser  suficiente  se (e apenas se) o pacote usar versão por símbolo
               (veja dpkg-gensymbols(1)) e não compilar nenhum pacote udeb. Note que symbols não são  suportados
               para pacotes udeb, os quais apenas se apoiam em shlibs para manuseamento das dependências.

           -Vpackage-relation
               Neste  caso,  o  valor  passado  a  -V  irá ser usado como uma relação de dependência. O package-
               relation deve geralmente ser do formato "algum-nome-pacote (>= alguma-versão-pacote)".  Lembre-se
               de incluir o nome do pacote.

               Note que o debhelper irá usar o calor como está sem verificações de sanidade ou  modificação.  Em
               casos  raros  e especiais, isto é preciso para gerar uma dependência num pacote diferente daquele
               que contém a biblioteca.

           Quando escolher um valor para esta opção, por favor lembre-se que se o pacote  fornecer  um  ficheiro
           symbols,  então esse é geralmente preferido sobre o ficheiro shlibs para pacotes .deb regulares. Veja
           dpkg-shlibdeps(1) para mais informação sobre este tópico.

       -n, --no-scripts
           Não adiciona o trigger "ldconfig" mesmo que parece que o  pacote  possa  precisar  dele.  A  opção  é
           chamada  --no-scripts  por  razões  históricas  pois  o  dh_makeshlibs  previamente gerava scripts do
           maintainer que chamavam ldconfig.

       -Xitem, --exclude=item
           Exclui ficheiros que contenham item em qualquer ponto do seu nome de ficheiro ou directório de  serem
           tratados como bibliotecas partilhadas.

       --add-udeb=udeb
           Cria  uma linha adicionar para udebs no ficheiro shlibs e usa udeb como o nome do pacote para o udebs
           depender dele em vez do pacote da biblioteca normal.

           Esta opção é apenas útil para casos especiais tais como quando o debhelper não consegue auto-detectar
           o nome de pacote para o pacote udeb, quando o udeb irá conter bibliotecas de múltiplos  pacotes  deb,
           ou quando o udeb contem bibliotecas não presentes no pacote deb.

       --no-add-udeb
           Não  adiciona  nenhumas  linhas  udeb  ao  ficheiro  shlibs.  Isto  pode  ser usado para desactivar a
           auto-detecção predefinida do udebs.

           Isto pode ser útil caso você não queira nenhum ficheiro shlibs para o udeb porque nenhum  pacote  irá
           depender  dele.   Ex.  porque adicionar um pacote udeb para a biblioteca foi "exagero" e a biblioteca
           está embebida num pacote udeb diferente.

       -- params
           Passa params para dpkg-gensymbols(1).

EXEMPLOS

       dh_makeshlibs -VNone
           Assumindo que este é um pacote chamado libfoobar1, gera um ficheiro shlibs que  se  parece  com  algo
           como isto:
            libfoobar 1 libfoobar1

       dh_makeshlibs -VUpstream-Version
           Assumindo  que a versão actual do pacote é 1.1-3, gera um ficheiro shlibs que se parece com algo como
           isto:
            libfoobar 1 libfoobar1 (>= 1.1)

       dh_makeshlibs -V 'libfoobar1 (>= 1.0)'
           Gera um ficheiro shlibs que se parece com isto:
             libfoobar 1 libfoobar1 (>= 1.0)

VEJA TAMBÉM

       debhelper(7)

       Este programa é parte do debhelper.

AUTOR

       Joey Hess <joeyh@debian.org>

TRADUÇÃO

       Américo Monteiro

       Se encontrar algum  erro  na  tradução  deste  documento,  por  favor  comunique  para  Américo  Monteiro
       a_monteiro@gmx.com ou Equipa Debian de Tradução Portuguesa traduz@debianpt.org.

13.24.2ubuntu1                                     2025-05-22                                   DH_MAKESHLIBS(1)