36 votes

Erreur libGL.so : impossible d'ouvrir un fichier d'objets partagés avec l'émulateur Android

J'ai essayé d'exécuter l'émulateur Android dans Ubuntu 12.04(64-bit). Mais, j'ai obtenu les erreurs suivantes.

Starting emulator for AVD 'emulatr'
Failed to load libGL.so
error libGL.so: cannot open shared object file: No such file or directory
Failed to load libGL.so
error libGL.so: cannot open shared object file: No such file or directory
emulator: emulator window was out of view and was recentered

Après avoir utilisé locate libGL. J'ai trouvé

/home/adnan/android-sdk-linux/tools/lib/libGL.so
/usr/lib/libGL.so
/usr/lib/i386-linux-gnu/libGL.so
/usr/lib/i386-linux-gnu/mesa/libGL.so
/usr/lib/i386-linux-gnu/mesa/libGL.so.1
/usr/lib/i386-linux-gnu/mesa/libGL.so.1.2.0
/usr/lib/x86_64-linux-gnu/mesa/libGL.so.1
/usr/lib/x86_64-linux-gnu/mesa/libGL.so.1.2.0

J'ai également essayé de trouver une solution à partir de ce document question Mais, ça n'a pas marché. Je serai heureux si vous m'aidez à résoudre ce problème.

58voto

Researcher Points 461

2 votes

Il fonctionne également pour Ubuntu 14.04 LTS. J'apprécie l'information, elle a été utile.

0 votes

Comment résoudre le même problème dans RHEL ?

9voto

MariuszS Points 7842

Sur Fedora

sudo yum install mesa-libGL-devel

8voto

Yasir Adnan Points 1023

Comme j'utilise Ubuntu 12.04 64 bits. Donc, j'ai fait ceci

$ 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

3voto

Cela fonctionne pour moi sur Ubuntu 14.04 64-bit :

$ sudo apt-get install libgl1-mesa-dri
$ sudo ln -sv /usr/lib/x86_64-linux-gnu/mesa/libGL.so.1 /usr/lib/x86_64-linux-gnu/libGL.so

1voto

Veger Points 17657

Vous n'avez pas besoin des fichiers de développement pour libgl1-mesa, donc à la place vous devriez/pourriez installer libgl1-mesa-dri au lieu de libgl1-mesa-dev comme suggéré par d'autres. Cela vous permet d'économiser quelques Mo de fichiers inutiles.

En outre, les applications Android sont soit 32 bits, soit 64 bits.

Pour une Ubuntu 32 bits, vous avez besoin du SDK 32 bits (car le 64 bits ne fonctionne pas) :

sudo apt-get install libgl1-mesa-dri

Il en va de même pour une Ubuntu 64 bits avec un SDK 64 bits.

Mais pour une Ubuntu 64 bits en combinaison avec un SDK 32 bits, vous devez spécifier que vous avez besoin de la version 32 bits du paquet :

sudo apt-get install libgl1-mesa-dri:i386

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X