Eu tenho um problema com o amd64 Debian GNU / Linux 9.3 (extensão) virtualbox vm. Eu quero usar a versão de 32 bits do libcheck (estrutura de teste de unidade C), porque o programa que eu teste deve ser compilado como 32 bits, então atualmente a compilação falha assim:
/usr/bin/ld: skipping incompatible //usr/lib/x86_64-linux-gnu/libcheck.a when searching for -lcheck
/usr/bin/ld: cannot find -lcheck
Para instalar a versão de 32 bits do libcheck que fiz:
dpkg --add-architecture i386
apt-get update
apt-get install gcc-multilib
apt-get install check:i386
O último comando diz:
...
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:
The following packages have unmet dependencies:
check:i386 : Depends: libsubunit-dev:i386 but it is not going to be installed
E: Unable to correct problems, you have held broken packages.
Se eu continuar alimentando o que quer, eu finalmente chego a isso:
sudo apt-get install check:i386 libsubunit-dev:i386 libsubunit0:i386 libc6:i386 install-info:i386 libgcc1:i386 gcc-6-base:i386
depois disso ele diz que instalará o que eu quero, mas remove metade do sistema (1766 pacotes) e pede para digitar "Sim, faça o que eu digo!". Isso obviamente não está certo. Minhas perguntas são:
- O que eu faço de errado?
- Como eu entendo o que o apt quer?
Eu tenho certeza que ele deve funcionar, já que se eu habilitar o teste em sources.list ele instala o gcc 7 e está tudo ok. O problema é que eu não quero testar neste vm, então eu reverti seu estado para esticar.