2013-07-02 68 views
35

我试图在Ubuntu 12.04(64位)中运行Android模拟器。但是,我收到以下错误。Android:错误libGL.so:无法打开共享对象文件:没有这样的文件或目录

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但是,没有工作。如果你们帮助解决这个问题,我会很高兴。

回答

8

由于我使用的是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 
+0

证实。有用。谢谢。 – 0x8BADF00D

9

在Fedora

sudo yum install mesa-libGL-devel 
1

你并不需要填实libgl1台面发展的文件,所以相反,您应该/可以安装libgl1-mesa-dri而不是libgl1-mesa-dev,如其他ERS。 这为您节省了几MB的不必要的文件。

此外,Android应用程序是32位或64位。

对于一个或一个32位的Ubuntu,你所需要的32位SDK(如64位不工作):

sudo apt-get install libgl1-mesa-dri 

同去的一个64位的Ubuntu有64位SDK。

但对于一个64位的Ubuntu与32位SDK组合,你需要指定您需要的软件包的32位版本:

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

我也有这个问题(Fedora的20),但libGL文件已经存在于我的文件系统中。根据对旧版fedora 18安装库的检查,我发现我可以通过为libGL.so链接到libGL.so.1.2.0提供一个符号链接来解决问题。

3

这对我的作品上的Ubuntu 14.04 64位

$ 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 
相关问题