27

我在 Kubuntu 上使用 Genymotion Android 模拟器已经有一段时间了,但最近我遇到了阻止它工作的 Open GL 错误。有趣的是,我有一个运行良好的旧版 Galaxy Nexus 4.2.2 模拟器映像(尽管它在我启动它时抱怨版本不匹配),但如果我尝试创建任何较新的映像,模拟器将无法启动。当我检查 logcat 时,我看到以下错误:

I/SurfaceFlinger(  459): SurfaceFlinger's main thread ready to run. Initializing graphics H/W...
D/libEGL  (  459): loaded /system/lib/egl/libEGL_emulation.so
D/        (  459): HostConnection::get() New Host Connection established 0xb890b898, tid 460
D/libEGL  (  459): loaded /system/lib/egl/libGLESv1_CM_emulation.so
D/libEGL  (  459): loaded /system/lib/egl/libGLESv2_emulation.so
E/setdpi  (  463): Setting DPI to 213
E/SurfaceFlinger(  459): hwcomposer module not found
W/SurfaceFlinger(  459): getting VSYNC period from fb HAL: 16666666
W/SurfaceFlinger(  459): no suitable EGLConfig found, trying without EGL_FRAMEBUFFER_TARGET_ANDROID
W/SurfaceFlinger(  459): no suitable EGLConfig found, trying without EGL_RECORDABLE_ANDROID
E/Trace   (  459): error opening trace file: No such file or directory (2)
W/GraphicBufferAllocator(  459): WOW! gralloc alloc failed, waiting for pending frees!
W/GraphicBufferAllocator(  459): alloc(1280, 800, 1, 00001a00, ...) failed -5 (I/O error)
E/SurfaceFlinger(  459): GraphicBufferAlloc::createGraphicBuffer(w=1280, h=800) failed (I/O error), handle=0x0
E/BufferQueue(  459): [FramebufferSurface] dequeueBuffer: SurfaceComposer::createGraphicBuffer failed
E/EGL_emulation(  459): tid 460: init(267): error 0x3003 (EGL_BAD_ALLOC)
E/SurfaceTextureClient(  459): getSlotFromBufferLocked: unknown buffer: 0x0
E/EGL_emulation(  459): tid 460: eglCreateWindowSurface(631): error 0x3003 (EGL_BAD_ALLOC)
E/libEGL  (  459): eglQuerySurface:403 error 300d (EGL_BAD_SURFACE)
E/libEGL  (  459): eglQuerySurface:403 error 300d (EGL_BAD_SURFACE)
D/SurfaceFlinger(  459): setOrientation, mFbdev=0xb8913df0, mFbDev->setOrientation=0xb679be20, orientation=0
I/gralloc_vbox86(  459): setOrientation: orientation=0
E/libEGL  (  459): call to OpenGL ES API with no current context (logged once per thread)
F/libc    (  459): Fatal signal 11 (SIGSEGV) at 0x00000000 (code=1), thread 460 (SurfaceFlinger)
I/DEBUG   (  100): *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
I/DEBUG   (  100): Build fingerprint: 'generic/vbox86tp/vbox86tp:4.2.2/JDQ39E/eng.buildbot.20131111.233324:userdebug/test-keys'
I/DEBUG   (  100): Revision: '0'
I/DEBUG   (  100): pid: 459, tid: 460, name: SurfaceFlinger  >>> /system/bin/surfaceflinger <<<
I/DEBUG   (  100): signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 00000000
I/DEBUG   (  100):     eax 00000000  ebx b7121ff4  ecx b8913a80  edx 00000000
I/DEBUG   (  100):     esi 00000000  edi b890b518
I/DEBUG   (  100):     xcs 00000073  xds 0000007b  xes 0000007b  xfs 00000000  xss 0000007b
I/DEBUG   (  100):     eip b7595d36  ebp b89169a8  esp b6d69bcc  flags 00010246
I/DEBUG   (  100): 
I/DEBUG   (  100): backtrace:
I/DEBUG   (  100):     #00  pc 00027d36  /system/lib/libc.so (strlen+6)
I/DEBUG   (  100):     #01  pc 00000030  [heap]
I/DEBUG   (  100): 
I/DEBUG   (  100): stack:
I/DEBUG   (  100):          b6d69b8c  00000000  
I/DEBUG   (  100):          b6d69b90  00000000  
I/DEBUG   (  100):          b6d69b94  00000000  
I/DEBUG   (  100):          b6d69b98  00000000  
I/DEBUG   (  100):          b6d69b9c  00000000  
I/DEBUG   (  100):          b6d69ba0  00000000  
I/DEBUG   (  100):          b6d69ba4  00000000  
I/DEBUG   (  100):          b6d69ba8  00000000  
I/DEBUG   (  100):          b6d69bac  00000000  
I/DEBUG   (  100):          b6d69bb0  00000000  
I/DEBUG   (  100):          b6d69bb4  00000000  
I/DEBUG   (  100):          b6d69bb8  00000000  
I/DEBUG   (  100):          b6d69bbc  00000000  
I/DEBUG   (  100):          b6d69bc0  00000000  
I/DEBUG   (  100):          b6d69bc4  00000000  
I/DEBUG   (  100):          b6d69bc8  00000000  
I/DEBUG   (  100):     #00  b6d69bcc  b71066db  /system/lib/libutils.so (android::String8::setTo(char const*)+43)
I/DEBUG   (  100):          b6d69bd0  00000000  
I/DEBUG   (  100):          b6d69bd4  b6d69c4c  [stack:460]
I/DEBUG   (  100):          b6d69bd8  b70bb98c  /system/lib/libEGL.so
I/DEBUG   (  100):          b6d69bdc  b7047129  /system/lib/libEGL.so (android::egl_display_t::HibernationMachine::decWakeCount(android::egl_display_t::HibernationMachine::WakeRefStrength)+73)
I/DEBUG   (  100):          b6d69be0  00000000  
I/DEBUG   (  100):          b6d69be4  b70b7ff4  /system/lib/libEGL.so
I/DEBUG   (  100):          b6d69be8  00003000  
I/DEBUG   (  100):          b6d69bec  b7044790  /system/lib/libEGL.so (android::egl_tls_t::getError()+64)
I/DEBUG   (  100):          b6d69bf0  b70b7ff4  /system/lib/libEGL.so
I/DEBUG   (  100):          b6d69bf4  b70b7ff4  /system/lib/libEGL.so
I/DEBUG   (  100):          b6d69bf8  b757e339  /system/lib/libc.so (pthread_mutex_lock+9)
I/DEBUG   (  100):          b6d69bfc  b71b1ff4  /system/lib/libsurfaceflinger.so
I/DEBUG   (  100):          b6d69c00  00000000  
I/DEBUG   (  100):          b6d69c04  b890b518  [heap]
I/DEBUG   (  100):          b6d69c08  b89169a8  [heap]
I/DEBUG   (  100):          ........  ........
I/DEBUG   (  100):     #01  b89169b0  b8907030  [heap]
I/DEBUG   (  100):          b89169b4  b8907030  [heap]
I/DEBUG   (  100):          b89169b8  b8907030  [heap]
I/DEBUG   (  100):          b89169bc  b8907030  [heap]
I/DEBUG   (  100):          b89169c0  b8907030  [heap]
I/DEBUG   (  100):          b89169c4  b8907030  [heap]
I/DEBUG   (  100):          b89169c8  b71afd48  /system/lib/libsurfaceflinger.so
I/DEBUG   (  100):          b89169cc  00000000  
I/DEBUG   (  100):          b89169d0  00000000  
I/DEBUG   (  100):          b89169d4  00000000  
I/DEBUG   (  100):          b89169d8  00000004  
I/DEBUG   (  100):          b89169dc  00000601  
I/DEBUG   (  100):          b89169e0  00000000  
I/DEBUG   (  100):          b89169e4  00000000  
I/DEBUG   (  100):          b89169e8  00000000  
I/DEBUG   (  100):          b89169ec  00000000  
D/Sensors (  381): Client connection accepted (43)
E/installd(  107): eof
E/installd(  107): failed to read size
I/installd(  107): closing connection
I/ServiceManager(   91): service 'display' died
I/ServiceManager(   91): service 'scheduling_policy' died
I/ServiceManager(   91): service 'batteryinfo' died
I/ServiceManager(   91): service 'usagestats' died
I/ServiceManager(   91): service 'power' died
I/ServiceManager(   91): service 'telephony.registry' died
I/ServiceManager(   91): service 'entropy' died
I/ServiceManager(   91): service 'sensorservice' died
W/AudioFlinger(  105): power manager service died !!!
D/AndroidRuntime(  468): 
D/AndroidRuntime(  468): >>>>>> AndroidRuntime START com.android.internal.os.ZygoteInit <<<<<<
D/AndroidRuntime(  468): CheckJNI is OFF

所以显然这是一个 Open GL 问题。

我最近将 Kubuntu 升级到了 13.10(事实上,我在升级过程中遇到了一些问题,最终擦除了它并创建了一个全新的安装)。我的显卡是 NVIDIA GeForce 8400 GS Rev. 3,我在 X.org v1.14.3 上运行专有驱动程序 v319.32,内核版本 3.2.0-37-generic x86_64。

有没有其他人让 Genymotion 模拟器使用类似的配置?

编辑:忘了提,我有 16GB 的 RAM。

4

4 回答 4

1

虽然这个问题已经很老了,但根据 Genymotion 的系统要求页面 for linux

系统要求

  • Ubuntu 14.04 (Trusty Tahr) 或更高版本 (64 位) Debian 8 (Jessie) (64 位)。
  • 64 位 CPU,具有 VT-x 或 AMD-V 功能,在 BIOS 设置中启用
  • 最近和专用的 GPU
  • 400 MB 磁盘空间
  • 2GB 内存
于 2016-04-20T16:19:03.993 回答
0

您需要更新您的操作系统,如前所述,您的 Kubuntu 版本有点旧。
或者你检查你的显卡是否有最新的驱动程序,如果不是这样,请更新它。

于 2016-02-13T09:42:23.737 回答
0

这是由我自己不太了解的虚拟化原因引起的。更新您的操作系统,这将处理虚拟化技术的版本差异。我正在使用 14.04 Ubuntu。当我使用 12.04 时,我遇到了同样的问题,升级解决了它

于 2016-02-05T17:54:26.423 回答
0

在您的终端中尝试此命令

sudo  /sbin/rcvboxdrv
于 2016-07-25T18:02:20.950 回答