Android Studio Run Emulator在linux上失败

时间:2017-07-04 14:12:28

标签: android android-studio android-emulator

我试图从Android Studio 2.3.3(在Linux机器上)运行Android模拟器但是如果失败没有错误(我尝试使用x86图像API 24)。

所以我尝试从控制台运行

 /opt/android/android-sdk-linux/tools/emulator @Nexus_5_API_24 

我收到此错误

libGL error: unable to load driver: i965_dri.so
libGL error: driver pointer missing
libGL error: failed to load driver: i965
libGL error: unable to load driver: i965_dri.so
libGL error: driver pointer missing
libGL error: failed to load driver: i965
libGL error: unable to load driver: swrast_dri.so
libGL error: failed to load driver: swrast
X Error of failed request:  GLXBadContext

我发现使用-use-system-libs选项运行的here解决了问题

我的问题是如何添加此参数以通过Android Studio运行模拟器? 如何在从终端运行的模拟器上从Android Studio启动我的应用程序? 现在我收到了这个错误:

com.android.ddmlib.AdbCommandRejectedException: device unauthorized.
This adb server's $ADB_VENDOR_KEYS is not set
Try 'adb kill-server' if that seems wrong.
Otherwise check for a confirmation dialog on your device.
Error while Installing APK

1 个答案:

答案 0 :(得分:5)

随软件提供的Android-Studio驱动程序的问题原因。 这样做是为了用os-driver替换它(对我来说是Manjaro-Linux [Arch-Linux的种类]:

mv ~/Android/Sdk/emulator/lib64/libstdc++/libstdc++.so.6{,.bak}
mv ~/Android/Sdk/emulator/lib64/libstdc++/libstdc++.so.6.0.18{,.bak}
ln -s /usr/lib/libstdc++.so  ~/Android/Sdk/emulator/lib64/libstdc++/

对于较旧的Android-Studio版本,libstdc ++位于另一个目录中(名为tools而不是模拟器)。 用于此用途:

mv ~/Android/Sdk/tools/lib64/libstdc++/libstdc++.so.6{,.bak}
mv ~/Android/Sdk/tools/lib64/libstdc++/libstdc++.so.6.0.18{,.bak}
ln -s /usr/lib/libstdc++.so  ~/Android/Sdk/tools/lib64/libstdc++/