Bagaimana cara menginstal perpustakaan 32-bit ketika mereka terus memiliki dependensi yang tidak dapat dihapus?

8

Saya mencoba menginstal Adobe Air di Ubuntu 13.10. Dalam versi Ubuntu ini, paket-paket seperti ia32-libsdan ia32-libs-multiarchtidak lagi tersedia, jadi saya mencoba untuk menginstal pustaka 32-bit yang saya butuhkan sendiri. Ketika menjalankan ./AdobeAIRInstaller.binsaya mendapat beberapa kesalahan tentang pustaka yang hilang, sebagian besar yang berhasil saya instal menggunakan sudo apt-get install <library-name>:i386dan kesalahan hilang. Saya mengalami masalah memperbaiki dua modul terakhir yang hilang:

Gtk-Message: Gagal memuat modul "overlay-scrollbar"
Gtk-Message: Gagal memuat modul "unity-gtk-module"

Saya mencoba menginstal overlay-scrollbar-gtk2:i386menggunakan apt:

overlay-scrollbar-gtk2: i386: Tergantung: overlay-scrollbar: i386 tetapi tidak dapat diinstal

Sial, itu tergantung pada paket yang tidak dapat diinstal. Sangat merepotkan. Jadi saya mencoba Googling jalan keluar ke perpustakaan overlay-scrollbar 32-bit untuk Saucy, yang saya temukan di sini . Pertama saya menginstal overlay-scrollbar:

$ sudo dpkg -i overlay-scrollbar_0.2.16 + r359 + 13.10.20130826-0ubuntu1_all.deb 
(Membaca basis data ... 226507 file dan direktori sedang diinstal.)
Bersiap untuk mengganti overlay-scrollbar 0.2.16 + r359 + 13.10.20130826-0ubuntu1 (menggunakan overlay-scrollbar_0.2.16 + r359 + 13.10.20130826-0ubuntu1_all.deb) ...
Membuka kemasan overlay-scrollbar ...
Menyiapkan overlay-scrollbar (0.2.16 + r359 + 13.10.20130826-0ubuntu1) ...
Memproses pemicu untuk libglib2.0-0: i386 ...
Memproses pemicu untuk libglib2.0-0: amd64 ...

Bagus! Itu berhasil. Kemudian saya mencoba menginstal overlay-scrollbar-gtk2: i386:

$ sudo dpkg -i overlay-scrollbar-gtk2_0.2.16 + r359 + 13.10.20130826-0ubuntu1_i386.deb 
Memilih overlay paket yang sebelumnya tidak dipilih-scrollbar-gtk2: i386.
(Membaca basis data ... 226507 file dan direktori sedang diinstal.)
Membuka kemasan overlay-scrollbar-gtk2: i386 (dari overlay-scrollbar-gtk2_0.2.16 + r359 + 13.10.20130826-0ubuntu1_i386.deb) ...
dpkg: masalah ketergantungan mencegah konfigurasi overlay-scrollbar-gtk2: i386:
 overlay-scrollbar-gtk2: i386 tergantung pada overlay-scrollbar.

dpkg: kesalahan pemrosesan overlay-scrollbar-gtk2: i386 (--install):
 masalah ketergantungan - meninggalkan tidak dikonfigurasi
Terjadi kesalahan saat memproses:
 overlay-scrollbar-gtk2: i386

Jadi ternyata saya masih perlu menginstal overlay-scrollbar: i386, yang tidak dapat diinstal oleh apt dan tidak diinstal oleh installer di atas. Masalah saya dengan unity-gtk-module cukup banyak identik tetapi dengan nama paket yang berbeda.

Saya punya beberapa pertanyaan terkait:

  • Mengapa beberapa paket 32-bit yang sangat penting tidak dapat diinstal menggunakan apt? Apakah saya kehilangan sumber?
  • Mengapa versi overlay-scrollbar versi i386 tidak diinstal di atas? Apakah karena penginstal berisi versi perpustakaan 32-bit dan 64-bit dan secara otomatis memutuskan untuk menginstal hanya versi 64-bit di sistem saya? Bisakah saya memaksanya untuk menginstal keduanya?
Hubro
sumber
kemungkinan rangkap dari Bagaimana saya menginstal Adobe AIR?
Mateo
@ Mateo: Pertanyaan terkait, tetapi tidak duplikat. Pertanyaan saya lebih lanjut tentang mengatasi masalah "ketergantungan yang tidak dapat dihapus" daripada bagaimana menginstal Adobe Air.
Hubro
Terakhir saya mencoba deb 32 bit bekerja tanpa penyelesaian pada 32 dan 64, jika ini adalah sesuatu yang baru yang diperlukan untuk menyelesaikan masalah agar udara bekerja, jawaban ini harus ada dalam pertanyaan itu. Kecuali itu adalah bug - yang sepertinya Anda juga telah mengajukan laporan bug - ini harus ditutup sebagai bug.
Mateo

Jawaban:

5
apt-get download overlay-scrollbar-gtk2
sudo dpkg --ignore-depends overlay-scrollbar -i overlay-scrollbar-gtk2*.deb

Sederhana.

Ini akan berfungsi, jika Anda sudah menginstal paket untuk arsitektur Anda. Jika tidak, Anda akan mendapatkan kesalahan, saat mencoba menggunakan dpkg / apt-get lain kali. Untuk memperbaikinya, jalankan:

sudo gedit /var/lib/dpkg/status

Temukan Package: [package name, overlay-scrollbar-gtk2 in this case], dan hapus dependensi yang diabaikan dari Depends:(overlay-scrollbar dalam hal ini).

Jika Anda menggunakan gedit, pastikan Anda telah menonaktifkan cadangan otomatis di Edit> Preferensi> Editor sebelum menyimpan. Perhatikan bahwa gedit memiliki preferensi terpisah untuk setiap pengguna, dan Anda menjalankannya sebagai root.

m132
sumber
2
Pada diperbarui 64-bit Ubuntu 14.04.4 aku harus melakukan ini sebagai gantinya: apt-get download overlay-scrollbar-gtk2:i386 ; sudo dpkg --force-depends -i overlay-scrollbar-gtk2_*_i386.deb.
pabouk
4

Paket overlay-scrollbar tidak datang dalam rasa i386 atau amd64; itu datang sebagai rasa "semua", yang menginstal pada semua lengkungan.

Tampaknya tidak ada tajuk Multi-Lengkungan: diizinkan sehingga tidak akan memenuhi paket i386 bergantung padanya. Anda harus mengajukan laporan bug yang meminta agar header yang hilang ditambahkan.

psusi
sumber
1
Sementara itu, apakah ada cara untuk mengelabui overlay-scrollbar-gtk2: i386 untuk menerima overlay-scrollbar: all? Mungkin symlink pintar di suatu tempat? Saya tidak melihat cara lain untuk membuat AIR bekerja di Ubuntu 13.10.
Hubro
2
Laporan bug
Hubro