Fehler beim Laden von libGL.so auf Android

Lesezeit: 4 Minuten

Benutzer-Avatar
php.khan

ich benutze Ubuntu 12.04 (Precise Pangolin) mit dem Orakel JDK 7, und wenn ich den Android-Emulator aus führe Finsternises gibt diesen Fehler:

[2012-07-04 02:52:10 - Emulator] error libGL.so: cannot open shared object file: No such file or directory 
[2012-07-04 02:52:10 - Emulator] Failed to load libGL.so

Außerdem ist der Emulator sehr langsam. Wie kann ich dieses Problem lösen?

Benutzer-Avatar
Benutzer1410657

Ich habe das Android SDK in ~/android-sdk-linux_x86 installiert, also habe ich Folgendes getan:

ln -s /usr/lib/libGL.so.1 ~/android-sdk-linux_x86/tools/lib/libGL.so

Dies behebt Fehler genauso wie das Verknüpfen mit /usr/lib, aber es erfordert kein Root und stört nicht die Kernsystemverzeichnisse.

  • Dies in Kombination mit dem “apt-get”-Befehl von libo ist hier die sauberste Lösung.

    – David Cameron

    2. Oktober 2012 um 20:30 Uhr

  • Wenn Sie libGL.so.1 noch nicht haben, müssen Sie möglicherweise die Lösung von libo verwenden, aber dies ist der sauberste Ort, um die Datei zu verknüpfen. Keine Notwendigkeit, 32-Bit-Bibliotheken in 64-Bit-Bibliotheken einzufügen….

    – Ajax

    19. November 2012 um 8:20 Uhr

  • locate libGL kann erstmal helfen

    – Yuan

    1. Juli 2013 um 9:21 Uhr

  • ich benutzte find / -name 'libGL.so.1' und es darin lokalisiert /usr/lib/x86_64-linux-gnu an debian jessie.

    – Justin Skiles

    14. Februar 2014 um 2:21 Uhr

Benutzer-Avatar
Waage

Unter 64-Bit-Ubuntu 12.04 gehen Sie folgendermaßen vor:

$ sudo apt-get install git-core gnupg flex bison gperf build-essential \
  zip curl libc6-dev libncurses5-dev:i386 x11proto-core-dev \
  libx11-dev:i386 libreadline6-dev:i386 libgl1-mesa-glx:i386 \
  libgl1-mesa-dev g++-multilib mingw32 openjdk-6-jdk tofrodos \
  python-markdown libxml2-utils xsltproc zlib1g-dev:i386
$ sudo ln -s /usr/lib/i386-linux-gnu/mesa/libGL.so.1 /usr/lib/i386-linux-gnu/libGL.so

Quelle: Erforderliche Pakete installieren (Ubuntu 12.04)

  • das hat mein System durcheinander gebracht

    – Alexandros

    23. November 2013 um 16:35 Uhr

  • Diese Antwort in Kombination mit Antwort – askubuntu.com/a/144194 zum Lösen von Abhängigkeiten (verwenden Sie aptitude, um die Abhängigkeit zu lokalisieren und zu sehen, was das Problem verursacht) und schließlich einen Befehl auszuführen sudo apt-get install --reinstall gcc-4.7-multilib wie ich auf Antwort gefunden habe askubuntu.com/a/236114

    – Alex

    8. Dezember 2013 um 17:15 Uhr

  • Ich musste zuerst “sudo apt-get install libglapi-mesa” und dann “sudo apt-get install libx11-dev:i386 libreadline6-dev:i386 libgl1-mesa-glx:i386” ausführen

    – StackOverlord

    23. April 2014 um 6:25 Uhr


  • Ich glaube, ich musste libGL für x86 nicht installieren, es reichte aus, ./sdk/tools/emulator64-x86 zu verwenden? (beachten Sie die ’64’)

    – jcarballo

    12. September 2014 um 16:51 Uhr

  • Oh Mann, das Posten riesiger Zeilen von App-Raten ohne irgendeine Erklärung oder Warnung ist nicht gut.

    – Sebastian Mach

    23. Oktober 2014 um 18:48 Uhr

Benutzer-Avatar
Benutzer1289608

Ich verwende Ubuntu 12.04 64-Bit. Verwenden Sie den folgenden Befehl, um das Problem zu lösen

 sudo ln -s /usr/lib32/fglrx/libGL.so.1.2 /usr/lib/libGL.so

Notiz: Dies gilt nur für diejenigen, die die AMD/ATI-Grafiktreiber verwenden.

  • Das hat auch bei mir funktioniert, ich denke, das funktioniert nur für ATI-Karten. Dies ist technisch falsch, da es die gemeinsam genutzte 32-Bit-Bibliothek in das (64-Bit) /lib/-Verzeichnis symbolisiert, aber es sieht so aus, als würde der Android-Emulator nur dort nach dieser Bibliothek suchen.

    – Alex Pretzlav

    12. Juli 2012 um 21:09 Uhr

  • Ich würde empfehlen, eine Dateisuche nach libGL.so durchzuführen und den Linkbefehl basierend auf dem Speicherort anzupassen. Meine war zufällig unter: /usr/lib/i386-linux-gnu/mesa

    – Bytebender

    30. Juli 2012 um 20:30 Uhr

  • Meins war unter /usr/lib/x86_64-linux-gnu/mesa/libGL.so, aber es verursachte einen Fehler, wenn ich versuchte, es auszuführen, weil es eine 32-Bit-Lib wollte und ich eine 64-Bit-Lib lieferte

    – Ben McCann

    13. September 2012 um 23:21 Uhr


Benutzer-Avatar
Drache aus Holz

Für 32-Bit-Ubuntu 12.04 LTS funktionierte dies:

sudo apt-get install libgl1-mesa-dev

Keines der folgenden hat funktioniert:

cd /usr/lib/i386-linux-gnu/mesa/
sudo ln -s libGL.so.1.2 libGL.so 
sudo ln -s libGL.so.1.2 /usr/lib/libGL.so
ln -s libGL.so.1.2 ~/android/android-sdk-linux/tools/lib/libGL.so

Benutzer-Avatar
Frank Afriat

Was für mich funktioniert (Ubuntu 12.04 64bit) war nur das Ausführen von:

    sudo apt-get install libgl1-mesa-dev

ich habe das gefunden libGL.so existiert im Verzeichnis /usr/lib/x86_64-linux-gnu/

Die Installation der 32-Bit-Version funktionierte nicht.

Benutzer-Avatar
unter

Auf 64-Bit-Ubuntu 12.04 gibt es kein /usr/lib64. Es ist nur /usr/lib. Außerdem ist auf meinem Rechner libGL.so nicht vorhanden. Stattdessen ist die Datei libGLEW.so

Um /usr/lib/LibGL.so zu installieren, können Sie Folgendes ausführen: sudo apt-get install libgl1-mesa-dev

Allerdings hat es das Problem bei mir nicht gelöst. Tatsächlich hat es wahrscheinlich mein System vermasselt.

Benutzer-Avatar
Marcantonio

Dies funktionierte bei mir unter 64-Bit-Ubuntu 12.10 und dem ADT-Bundle:

ln -s /usr/lib/x86_64-linux-gnu/mesa/libGL.so.1 ~/adt-bundle-linux-x86_64/sdk/tools/lib/libGL.so

Wenn Sie nicht haben /usr/lib/x86_64-linux-gnu/mesa/libGL.so.1 einfach installieren libgl1-mesa-glx

sudo apt-get install libgl1-mesa-glx

1283830cookie-checkFehler beim Laden von libGL.so auf Android

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy