libgtk1.2 deb install falha

1

Estou tentando instalar o libgtk1.2, mas a instalação falha.

sudo dpkg -i libgtk1.2_1.2.10-18.1build2_i386.deb 
Selecting previously unselected package libgtk1.2:i386.
(Reading database ... 226813 files and directories currently installed.)
Preparing to unpack libgtk1.2_1.2.10-18.1build2_i386.deb ...
Unpacking libgtk1.2:i386 (1.2.10-18.1build2) ...
dpkg: libgtk1.2:i386: dependency problems, but configuring anyway as you requested:
 libgtk1.2:i386 depends on libgtk1.2-common (>= 1.2.10-18.1build2).

Setting up libgtk1.2:i386 (1.2.10-18.1build2) ...
Processing triggers for libc-bin (2.23-0ubuntu3) ...

Ele falha na dependência da libgtk1.2-common, mas eu já tenho isso instalado.

apt list --installed | grep libgtk
...
libgtk1.2/now 1.2.10-18.1build2 i386 [installed,local]
libgtk1.2-common/now 1.2.10-18.1build2 all [installed,local]
...

O libgtk1.2-common foi instalado como um deb. A dependência para o libgtk1.2 está procurando por 1.2.10-18.1build2, que corresponde ao comum da libgtk1.2 que eu instalei.

Por que a libgtk1.2 não consegue ver a dependência? Como posso consertar isso?

Note que eu sei que a libgtk1.2 é antiga, mas eu a exijo para uma aplicação mais antiga. Outra coisa a notar é que o aplicativo que eu uso funciona se eu deixar o libgtk1.2 quebrado instalado, mas isso significa que não posso mais instalar nenhum pacote. Qualquer novo software requer que eu execute 'sudo apt-get -f install', o qual irá remover o libgtk1.2 (já que está quebrado).

editar : Meu palpite é porque o comum é um pacote 'all', o i386 libgtk1.2 não está vendo isso como instalado. Não tenho certeza de como proceder e começar a trabalhar.

editar : Aqui está a saída do comando solicitado.

sudo apt-get -f installReading package lists... Done
Building dependency tree       
Reading state information... Done
Correcting dependencies... Done
The following package was automatically installed and is no longer required:
  libxi6:i386
Use 'sudo apt autoremove' to remove it.
The following packages will be REMOVED:
  libgtk1.2:i386
0 upgraded, 0 newly installed, 1 to remove and 11 not upgraded.
1 not fully installed or removed.
After this operation, 1,876 kB disk space will be freed.
Do you want to continue? [Y/n] 
(Reading database ... 226826 files and directories currently installed.)
Removing libgtk1.2:i386 (1.2.10-18.1build2) ...
Processing triggers for libc-bin (2.23-0ubuntu3) ...
    
por quickblueblur 10.09.2016 / 14:10

1 resposta

2

Solução

dpkg-deb -x libgtk1.2-common_1.2.10-18.1build2_all.deb tmp
dpkg-deb --control libgtk1.2-common_1.2.10-18.1build2_all.deb tmp/DEBIAN
vi tmp/DEBIAN/control
--add the following line >> Multi-Arch: foreign
dpkg -b tmp libgtk1.2-common_1.2.10-18.1build2_all_new.deb
sudo dpkg -i libgtk1.2-common_1.2.10-18.1build2_all_new.deb
sudo apt-get -f install
sudo dpkg -i libgtk1.2_1.2.10-18.1build2_i386.deb
sudo apt-get -f install

Fonte

Ao modificar o deb para suportar o Multi-Arch externo, ele permitiu que a libgtk1.2 visse a libgtk1.2-common. libgtk1.2 era i386 e estou em x86_64. Sem a modificação, o libgtk1.2 não podia ver o libgtk1.2-common.

    
por quickblueblur 10.09.2016 / 16:58