Ubuntu 12.04(64-bit)でAndroid emulatorを実行しようとしましたが、次のエラーが発生しました。
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
locate libGL.
を使用した後、見つけた
/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
私もこれからいくつかの解決策を試しました question しかし、うまくいきませんでした。皆さんがこの問題を解決するのを手伝ってくれたら嬉しいです。
64ビットUbuntu 12.04を使用しているため。だから、私はこれをやった
$ 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
http://learnedstuffs.wordpress.com/2012/07/17/fixing-ubuntu-error-failed-to-load-libgl-so/
apt-get install libgl1-mesa-dev
私のために働いた
Fedoraで
Sudo yum install mesa-libGL-devel
これはbuntu 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
Libgl1-mesaの開発ファイルは必要ないため、代わりにlibgl1-mesa-dri
の代わりに libgl1-mesa-dev
他の人が提案したとおり。これにより、不要なファイルが数MB節約されます。
さらに、Androidアプリケーションは32ビットまたは64ビットです。
32ビットUbuntuの場合、32ビットSDKが必要です(64ビットが機能しないため):
Sudo apt-get install libgl1-mesa-dri
64ビットSDKを備えた64ビットUbuntuでも同様です。
ただし、32ビットSDKと組み合わせた64ビットUbuntuの場合、32ビットバージョンのパッケージが必要であることを指定する必要があります。
Sudo apt-get install libgl1-mesa-dri:i386
私もこの問題を抱えていました(Fedora 20)が、libGLファイルは既に私のファイルシステムに存在していました。古いFedora 18インストールでのライブラリの調査に基づいて、libGL.soをlibGL.so.1.2.0にリンクするためのシンボリックリンクを提供することで問題を解決できることがわかりました。