Por que instalar a versão i386 de um pacote aciona a remoção da versão x86_64?

0

Eu encontrei uma pergunta semelhante aqui , mas a resposta não está completamente clara para mim.

Por que instalar a versão i386 de um pacote aciona a remoção da versão x86_64 (e vice-versa)? Eu vejo esses são colocados em seus respectivos diretórios em / usr / lib / arch .

Por exemplo, é isso que acontece no meu sistema:

sudo apt install libicu-dev:i386 -V
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Suggested packages:
   icu-doc:i386
The following packages will be REMOVED:
   libicu-dev (57.1-5ubuntu0.1)
The following NEW packages will be installed:
   libicu-dev:i386 (57.1-5ubuntu0.1)
0 upgraded, 1 newly installed, 1 to remove and 0 not upgraded.
Need to get 15.6 MB of archives.
After this operation, 24.0 MB disk space will be freed.
Do you want to continue? [Y/n]

Este é um problema, pois as libs do icu x86_64 são removidas do sistema, mas eu ainda preciso delas.

Na verdade, parece que esta operação não remove completamente as bibliotecas, mas remove os arquivos .so, o que faz com que qualquer link falhe. Para concluir a compilação, preciso instalar novamente o que está faltando.

Eu vejo que pode haver um choque dos arquivos de cabeçalho, talvez seja esse o motivo? Por que não foram colocados em diretórios separados de acordo com o arco como é feito para as bibliotecas? De fato, parece que é impossível construir para i386 e x86_64 independentemente, sem ter que trocar as libs todas as vezes, o que é bastante desconfortável.

Alguém que possa explicar essa situação?

    
por Luca Carlon 09.09.2017 / 01:06

1 resposta

0

Descobri que este é provavelmente um bug: link .

    
por Luca Carlon 09.09.2017 / 13:31