Como eu removo ia32-libs da linha Depends como gerada pelo shlibs: Depends?

1

Eu criei um pacote que contém bibliotecas de 32 bits para compatibilidade com aplicativos de 32 bits em sistemas de 64 bits, armazenados em /usr/lib32 . Isso faz com que a dependência ia32-libs seja adicionada ao meu pacote. No entanto, o pacote funciona perfeitamente sem essas bibliotecas, pois outros programas de 32 bits devem instalar ia32-libs .

Como evito que o processo de criação gere a dependência ia32-libs ? nvidia-current parece ser capaz de fazer isso também, mas usa CDBS que eu não uso. (Eu uso um arquivo rules simples como gerado por dh_make )

    
por Lekensteyn 29.08.2011 / 11:03

2 respostas

0

Para fazer o debhelper ignorar as bibliotecas de 32 bits, tive que adicionar um destino para ignorar os caminhos contendo /usr/lib32 :

override_dh_shlibdeps:
    dh_shlibdeps --exclude=/usr/lib32

Depois disso, as dependências do ia32-libs não serão mais calculadas. Como esse alvo é necessário apenas para sistemas de 64 bits, eu realmente uso o snippet abaixo para o pacote virtualgl:

ifeq ($(DEB_BUILD_ARCH), amd64)
override_dh_shlibdeps:
    dh_shlibdeps --exclude=debian/virtualgl/usr/lib32
endif

Observe que o espaço em branco antes de dh é uma guia .

    
por Lekensteyn 29.08.2011 / 12:26
0

A remoção da dependência ia32-libs é explicitamente abordada no Guia de implementação do Debian Multiarch:

link

O que basicamente significa que se há certas ferramentas do dpkg que estão emitindo muitos pacotes ao especificar o multiarch então é um bug da ferramenta e agora é um bom momento para registrar um relatório.

    
por Steve-o 29.08.2011 / 11:33