我已尝试从此链接安装kvm:https://help.ubuntu.com/community/KVM/Installation
但即使在尝试此操作后,在Software GLES 2.0模式下运行时仿真器速度很慢,当我选择硬件GLES 2.0作为图形时,我无法启动avd。它显示启动avd几秒钟然后没有任何反应。我在这里缺少什么吗?
答案 0 :(得分:7)
所以,问题是Android SDK无法找到OpenGL配置和库。 Google使用SDK分发OpenGL库但在Ubuntu中由于找不到C ++库而导致配置被破坏,因此我找到的最佳解决方案是指向您已经在Ubuntu上拥有的系统库的字形链接。我让您执行的先前测试从命令行强制执行该情况,但是通过接下来的步骤,您可以拥有更永久且更舒适的解决方案,允许您直接从AVD UI激活任何硬件加速仿真器。
首先,您的系统库位于此Ubuntu路径上:
/usr/lib/x86_64-linux-gnu/
如果libstdc++.so.6
中没有/usr/lib/x86_64-linux-gnu/
个文件,请按以下方式安装:
sudo apt install libstdc++6
在您的情况下,很明显您已经安装了正确的库,或者模拟器不会从命令行启动,但是对于没有在其系统上安装了正确的lib的人,我会离开上一步。 / p>
所以,现在我们需要告诉Android SDK我们需要使用系统库。为此,只需执行以下操作:
如果libstdc++6
内有~/yoursdkpath/emulator/lib64/libstdc++/
个文件,请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启动,请重复此步骤,所有步骤都将恢复正常。