2017-04-24 84 views
1

我试图从这个链接安装KVM:https://help.ubuntu.com/community/KVM/Installation运行相较于Windows在Ubuntu 17.04的极端缓慢的Android模拟器10

但是,即使尝试这种模拟器后,软件GLES 2.0模式下运行时,当我选择硬件是缓慢的GLES 2.0作为图形我无法启动avd。它显示开始AVD几秒钟,然后没有任何反应。有什么我在这里失踪?

+0

保留硬件选择GLES 2.0,从控制台**/yoursdkpath/emulator/.emulator -avd youremulatorname -use-system-libs **运行此命令并告诉我会发生什么。小心地替换你的确切的SDK路径和模拟器名称。 –

+0

@MartinRevert谢谢!它完美的作品。所以我必须始终通过终端启动它? –

+0

不,你不知道。我只是试图诊断问题。我将在几分钟内发布解决方案的答案。 –

回答

4

所以,问题是Android SDK无法找到OpenGL配置和库。 Google使用SDK分发OpenGL库,但在Ubuntu中,由于无法找到C++库,因此配置中断,因此我找到的最佳解决方案是将指向您已经在Ubuntu上使用的系统库的链接指向一个simbolic链接。之前的测试让我执行了命令行强制的情况,但通过接下来的步骤,您可以拥有更永久和更舒适的解决方案,从而允许您直接从AVD UI中启动任何硬件加速模拟器。

首先,你的系统库是这个Ubuntu的道路上:

/usr/lib/x86_64-linux-gnu/ 

如果有存在内/usr/lib/x86_64-linux-gnu/没有libstdc++.so.6文件,请安装它:

sudo apt install libstdc++6 

在你的情况是相当很明显,你已经安装了正确的库,或者模拟器不会从命令行启动,但是对于没有在系统中安装正确库的人离开了上一步。

所以,现在我们需要告诉Android SDK我们需要使用系统库。为此,请执行以下操作:

如果~/yoursdkpath/emulator/lib64/libstdc++/内有libstdc++6文件,请执行mv libstdc++6 libstdc++6.bak备份。

然后:

ln -sf /usr/lib/x86_64-linux-gnu/libstdc++.so.6 ~/yoursdkpath/emulator/lib64/libstdc++/libstdc++.so.6 

就是这样,去AVD,并开始与硬件GLES 2.0的配置选择的模拟器,它会工作。

重要提示:Google会不时更​​新您的模拟器。如果由于某种原因,您注意到Google更新后模拟器停止从AVD启动,请重复此步骤,所有操作都将恢复正常。

+0

它的工作。谢谢:) –

+0

非常感谢你。你的建议效果很好! –

相关问题