Früher ™ gab es mal ein praktisches kleines Tool namens Getlibs. Es diente dazu 32-Bit Bibliotheken auf einem 64-Bit Ubuntu (oder auch anderen Distrubutionen) zu installieren. So konnte man sehr einfach 32-Bit Programme unter einem 64-Bit Linux laufen lassen, auch wenn es die nötigen Bibliotheken nicht gleich mitbringt. Vor einigen Jahren musste man sich zum Beispiel bei Skype oder Zattoo damit rumschlagen, heute ist das aber meist nicht mehr nötig.

[UPDATE…] Ach, vergesst bitte gleich den ganzen Getlibs-Schmarn. Multiarch ist nicht spurlos an mir vorbeigegangen. Aber dass es so einfach ist, wusste ich nicht. Wenn ihr also eine Bibliothek — oder was auch immer sonst — braucht, dann hängt einfach ein :i386 an den Paketnamen. Mit dem Auruf…

$ sudo apt-get install libqt5gui5:i386

…landet also die Bibliothek libqt5gui5 inklusive aller 32-Bit Abhängigkeiten auf eurem System, ohne dass man groß was basteln muss. Und damit könnt ihr den Rest des ganzen Beitrags gleich wieder knicken und ab in den Kompost schicken. [/UPDATE]

Inzwischen ist die Version 2.06 von Getlibs jedoch kaputt. Man kann die Anwendung zwar noch installieren und aufrufen, und selbst beim Installieren von 32-Bit Bibliotheken wird kein Fehler im Terminal ausgegeben, das 32-Bit Programm möchte aber dennoch nicht laufen. Der Grund dafür ist, dass sich seit Ubuntu „Natty“ 11.04 der Speicherort der 32-Bit Librarys geändert hat. Getlibs wurde auf diese Neuerung hin nie aktualisiert…

  • /lib32/ -> /lib/i386-linux-gnu
  • /usr/lib32/ -> /usr/lib/i386-linux-gnu

Da ich gerade selber vor dem Problem stand ein 32-Bit Programm auf meinem 64-Bit Ubuntu 13.04 laufen lassen zu wollen, zu dem eben die nötigen  32-Bit Bibliotheken fehlten, habe ich einen Fork der letzten Getlibs-Version 2.06 erstellt, diesen für aktuelle Ubuntus fit gemacht und ihn in meinem GitHub als Getlibs 2.07 online gestellt. Ihr könnt das aktualisierte Getlibs dementsprechend über die Kommandos…

$ wget https://gist.github.com/linuxundich/5536156/raw -O ~/bin/getlibs
$ chmod +x ~/bin/getlibs

…auf eurem Ubuntu installieren. Zur Bedienung verweise ich auf das sehr gut geschriebene Wiki bei den Ubuntuusers. Getestet habe ich die Version nicht breit, sondern nur auf meinem Ubuntu 13.04, aber ich denke die aktualisierte Version des Skripts sollte auf allen noch unterstützten Ubuntu-Versionen funktionieren. Solltet Ihr Probleme entdecken, dann meldet euch bitte bei mir.

Vorheriger ArtikelAndreas und seine Erfahrungen mit dem cirrus7 one
Nächster ArtikelMit BBQScreen den Bildschirminhalt des Android-Handys als Video auf den Linux-PC streamen
Hallo, ich bin Christoph - Linux-User, Blogger und pragmatischer Fan freier Software. Wie ihr ohne Zweifel bemerkt haben solltet, schreibe ich hier über Linux im Allgemeinen, Ubuntu im Speziellen sowie Android und andere Internet-Themen. Wenn du Freude an meinen Artikel gefunden haben solltest, dann kannst du mir über Facebook, Twitter oder natürlich dem Blog folgen.

6 Kommentare

  1. Tip: Installier einfach das Package ia32-libs 😉 Das wird stetig gepflegt und bringt ebenfalls alle nötigen Abhängigkeiten sauber mit.

    • So schlau bin ich auch 😉 Nein, das reicht nicht, wenn du etwa libqt5gui5 in der 32-Bit Version brauchst. In diesem Fall müsstest du auf packages.ubuntu.com gehen, dir dort das Ding raussuchen, den Mirror wählen, das .deb runterladen und letztendlich das DEB-Archiv installieren. Bei mehr als einer Abgängigkeit SEHR mühsam. Einfach mal den verlinkten Wiki-Artikel lesen. Grüße, Christoph.

  2. Hm, das Tool hätte ich vor längerer Zeit mal gebraucht, glaube ich. 😀 Ich werde das mal auf Ubuntu 12.04 testen. Könnte es irgendwelche üblen Nebeneffekte geben, die wahrscheinlich sind? Irgendwelche Schäden an 64 Bit-Paketen z.B.?

    Danke für das Script und natürlich für die Veröffentlichung als Open Source. 😉

  3. Hallo Christoph,

    danke für die Veröffentlichung des geänderten Skripts.
    Ich muss noch eine Änderung vornehmen in Zeile 557.
    Statt „$tempdir/extracted/usr/lib/i386-linux-gnu/*“ lief es bei mir nur mit „$tempdir/extracted/usr/lib/*“, also das „i386-linux-gnu/“ war zuviel.

    Danke und viele Grüße

Kommentieren Sie den Artikel

Bitte geben Sie Ihren Kommentar ein!
Bitte geben Sie hier Ihren Namen ein