Uruchamianie aplikacji 32-bitowych na systemie 64-bitowym

Archiwalne, stare wpisy FAQ i HowTo Użytkowników
giaur
Member
Posty: 1915
Rejestracja: 25 maja 2007, 22:16

Uruchamianie aplikacji 32-bitowych na systemie 64-bitowym

Post autor: giaur »

Przedstawię tutaj uniwersalny spsób. Każda aplikacja skompilowana pod 32-bity może być uruchomiona bez żadnych problemów w systemie 64-bitowym.

Co powinniśmy zrobić:
- jeżeli mamy 32-bitowy pakiet .deb - zainstalować program z opcją --force-architecture (szczegóły: man dpkg)
- jeżeli mamy aplikację w postaci binarnej, skompilowaną pod 32 bity (jak np. firefox) - rozpakowujemy do wybranego katalogu

Mając już zainstalowaną aplikację, musimy przygotować nasz system do jej uruchomienia - czyli zainstalować 32-bitowe wersje wymaganych bibliotek.

Postępujemy następująco:
- otwieramy konsolę
- przechodzimy do katalogu z aplikacją
- próbujemy uruchomić aplikację

Na 99% program się nie uruchomi i otrzymamy komunikat w stylu:

Kod: Zaznacz cały

error while loading shared libraries: [NazwaBiblioteki]: cannot open shared object file: No such file or directory
Nie jesteśmy jednak na straconej pozycji. Pierwsza rzecz, którą robimy to wejście na stronę: http://www.debian.org/distrib/packages#search_packages - w sekcji "Przeszukaj zawartość pakietów" wpisujemy nazwę szukanej biblioteki, wybieramy naszą dystrybucję i klikamy szukaj. Jeżeli w rezultatach wyszukiwania będzie pakiet dla architektury amd64, którego nazwa rozpoczyna się od lib32 - instalujemy go.
W przeciwnym przypadku, pobieramy ręcznie pakiet w wersji 32-bitowej (i386) i rozpakowujemy jego zawartość, a następnie rozpakowujemy zawartość pliku data.tar.gz. Po rozpakowaniu tego ostatniego pliku otrzymamy katalogi usr/lib i/lub usr/share. Zawartość (wymagane biblioteki w wersjach 32-bit) kopiujemy (jako root) do katalogu /usr/lib32.

Po wykonaniu tej procedury ponownie próbujemy uruchomić nasza aplikację, powtarzając opisaną procedurę do skutku.

Za pomocą tej metody z powodzeniem udało mi się uruchomić m.in. 32-bitowego firefoxa oraz thunderbirda pobranego w skompilowanej wersji ze strony mozilli.

Jest to być może trochę żmudny, ale uniwersalny sposób umożliwiający uruchomienie każdej aplikacji 32-bitowej w środowisku 64-bitowym - moim zdaniem lepszy niż stosowanie 32-bitowego chroota
Zablokowany