Mylące, prawda? Pozwól mi trochę wyjaśnić.
Dlaczego?
- Oprogramowanie 32-bitowe działa dobrze na 64-bitowym jądrze z 64-bitowym sprzętem.
- Niektóre oprogramowanie nadal opiera się na określonych bibliotekach 32-bitowych. To nie jest miłe, ale czasami nie mamy siły, aby to zmienić.
- Oprogramowanie 32-bitowe musi być dostępne dla systemu, aby zaspokoić zależności, dlatego też korzysta z repozytoriów 32-bitowych.
Jestem od początku 2011 roku. Co się stało?
W 64-bitowych wersjach Ubuntu wcześniejszych niż 11.10, niektóre wspólne biblioteki 32-bitowe były spakowane w jednym ia32-libs
pakiecie reprezentowanym dla APT / Dpkg jako 64-bit i w takiej lokalizacji w repozytorium. Jeśli potrzebujesz jednej biblioteki dla aplikacji, będzie to zależeć od ponad 150 MB 32-bitowych bibliotek 1 . Oczywiście nie jest to fajny projekt.
Wiele architektur?
Nowym pomysłem było wprowadzenie tak zwanych możliwości „Multiarch” do APT / Dpkg i otaczających go narzędzi. Zostało to przedstawione w kilku planach na Launchpad, oto jeden z nich . Oneiric (11.10) stał się pierwszym wydaniem obsługującym Multiarch.
Jak to działa?
Możesz powiedzieć Dpkg, jakie architektury może działać twój system. W mojej 64-bitowej instalacji 12.04 jest to tutaj:
$ cat /etc/dpkg/dpkg.cfg.d/multiarch
foreign-architecture i386
Otwiera cały świat i386
pakietów, przy amd64
czym nadal jest domyślny:
$ apt-cache show libqt4-core | grep -E "^(Filename|Architecture)"
Architecture: amd64
Filename: pool/universe/q/qt4-x11/libqt4-core_4.8.1-0ubuntu4.3_amd64.deb
$ apt-cache show libqt4-core:i386 | grep -E "^(Filename|Architecture)"
Architecture: i386
Filename: pool/universe/q/qt4-x11/libqt4-core_4.8.1-0ubuntu4.3_i386.deb
Powyższy przykład pokazuje, że Multiarch umożliwia opiekunom pakietów po prostu uzależnienie ich pakietów, na libqt4-core:i386
przykład, i umożliwia zainstalowanie dowolnej 32-bitowej biblioteki / pakietu (a tym samym zainstalowanie dowolnego pakietu, który zależy od dowolnej 32-bitowej biblioteki / pakietu) , a nie wstępnie wybrany zestaw.
ia32-libs
zgodność
Jeśli byłeś przyzwyczajony do zainstalowania ia32-libs
pakietu jako pakietu wygodnego do zainstalowania wspólnego zestawu podstawowych bibliotek 32-bitowych, możesz teraz użyć . Jest to prosty metapakiet w zależności od tego samego (lub przynajmniej bardzo podobnego) zestawu bibliotek, ale zostanie zainstalowany z mocą Multiarch.ia32-libs-multiarch
Dalsze powiązane odczyty
1 W przypadku Lucid (10.04) rozmiar instalacji ia32-libs
pakietu wynosi 155 812,0 kB.
dpkg --print-foreign-architectures
Radzę raczej biegać niż catting/etc/dpkg/dpkg.cfg.d/multiarch
. Nie istnieje po 12.04.