Android模拟器-无法加载驱动程序 [英] Android emulator - unable to load driver
问题描述
在Ubuntu上运行,出现此错误:
Running on Ubuntu, I'm getting this error:
Cannot launch AVD in emulator.
Output:
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
Major opcode of failed request: 155 (GLX)
Minor opcode of failed request: 6 (X_GLXIsDirect)
Serial number of failed request: 55
Current serial number in output stream: 54
平台工具是最新的.
仿真器图像使用https://dl.google.com/android/repository/sys-img/google_apis/x86_64-24_r08.zip
,它在Android N上.
Emulator image uses https://dl.google.com/android/repository/sys-img/google_apis/x86_64-24_r08.zip
and it's on Android N.
更新(2016年12月2日): @Sébastien的解决方案不再起作用,但给出了:
Update (Dec 2, 2016): @Sébastien's solution no longer works but gives:
Cannot launch AVD in emulator.
Output:
failed to create drawable
getGLES2ExtensionString: Could not create GLES 2.x Pbuffer!
Failed to obtain GLES 2.x extensions string!
Could not initialize emulated framebuffer
emulator: Listening for console connections on port: 5554
emulator: Serial number of this emulator (for ADB): emulator-5554
emulator: ERROR: Could not initialize OpenglES emulation, use '-gpu off' to disable it.
emulator: WARNING: ./android/metrics/metrics_reporter.cpp:142: Failed to get a writable, unused path for metrics. Tried: /home/me/.android/avd/metrics/metrics.17386.yogibear
如果我禁用基于GPU的渲染并切换到基于软件的GL图形,则会出现此运行时错误:
If I disable GPU based rendering and switch to software based GL graphics, there is this runtime error:
Firebase API initialization failure.
DeadSystemException: The system died; earlier logs will point to the root cause
FATAL EXCEPTION: main
Process: com.whatever.mobile, PID: 4501
DeadSystemException: The system died; earlier logs will point to the root cause
推荐答案
遇到相同的问题,我的解决方法是设置以下环境变量:
Had the same issue and my fix was to set the following env variable:
导出ANDROID_EMULATOR_USE_SYSTEM_LIBS = 1
export ANDROID_EMULATOR_USE_SYSTEM_LIBS=1
就我而言,我将其放在〜/.bashrc中. 发送该代码后,我照常启动仿真器,即从命令行启动:
In my case I put it in ~/.bashrc. With that being sent I start emulator as usual, i.e. from command line:
$仿真器-avd Nexus_4_API_23
$ emulator -avd Nexus_4_API_23
这似乎是Android Bug跟踪器中跟踪的常见问题: https://code.google.com/p/android/issues/detail?id=197254
Looks like it's a common well-known problem tracked in Android bug tracker: https://code.google.com/p/android/issues/detail?id=197254
这篇关于Android模拟器-无法加载驱动程序的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!