中止消息:"找不到 OpenGL ES 实现"



我正在尝试在我的设备上运行棒棒糖,当我闪现图像时,我得到了以下日志

--------- beginning of crash
F/libc    ( 1565): Fatal signal 6 (SIGABRT), code -6 in tid 1565 (surfaceflinger)
I/DEBUG   ( 1572): *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
I/DEBUG   ( 1572): Build fingerprint:     'Android/full_arndale/arndale:5.0.2/LRX22G/veera05211114:eng/test-keys'
I/DEBUG   ( 1572): Revision: '0'
I/DEBUG   ( 1572): ABI: 'arm'
I/DEBUG   ( 1572): pid: 1565, tid: 1565, name: surfaceflinger  >>>     /system/bin/surfaceflinger <<<
I/DEBUG   ( 1572): signal 6 (SIGABRT), code -6 (SI_TKILL), fault addr --------
I/DEBUG   ( 1572): Abort message: 'couldn't find an OpenGL ES implementation'
I/DEBUG   ( 1572):     r0 00000000  r1 0000061d  r2 00000006  r3 00000000
I/DEBUG   ( 1572):     r4 b6f34114  r5 00000006  r6 00000002  r7 0000010c
I/DEBUG   ( 1572):     r8 b6962000  r9 00000000  sl 00000000  fp beebfa9c
I/DEBUG   ( 1572):     ip 0000061d  sp beebf510  lr b6ebdf21  pc b6ee1858  cpsr 60070010
I/DEBUG   ( 1572): 
I/DEBUG   ( 1572): backtrace:
I/DEBUG   ( 1572):     #00 pc 0003a858  /system/lib/libc.so (tgkill+12)
I/DEBUG   ( 1572):     #01 pc 00016f1d  /system/lib/libc.so (pthread_kill+52)
I/DEBUG   ( 1572):     #02 pc 00017b2f  /system/lib/libc.so (raise+10)
I/DEBUG   ( 1572):     #03 pc 0001439d  /system/lib/libc.so (__libc_android_abort+36)
I/DEBUG   ( 1572):     #04 pc 00012a3c  /system/lib/libc.so (abort+4)
I/DEBUG   ( 1572):     #05 pc 00007a59  /system/lib/libcutils.so (__android_log_assert+88)
I/DEBUG   ( 1572):     #06 pc 000430b9  /system/lib/libEGL.so
I/DEBUG   ( 1572):     #07 pc 00010641  /system/lib/libEGL.so
I/DEBUG   ( 1572):     #08 pc 00010e21  /system/lib/libEGL.so (eglGetDisplay+24)
I/DEBUG   ( 1572):     #09 pc 000171d5  /system/lib/libsurfaceflinger.so (android::SurfaceFlinger::init()+44)
I/DEBUG   ( 1572):     #10 pc 000007e1  /system/bin/surfaceflinger
I/DEBUG   ( 1572):     #11 pc 000128ed  /system/lib/libc.so (__libc_init+44)
I/DEBUG   ( 1572):     #12 pc 000008d8  /system/bin/surfaceflinger
I/mediaserver( 1574): ServiceManager: 0xb60500c0
I/AudioFlinger( 1574): Using default 3000 mSec as standby time.
I/ServiceManager( 1574): Waiting for service batterystats...
I/DEBUG   ( 1572): 
I/DEBUG   ( 1572): Tombstone written to: /data/tombstones/tombstone_00
 I/ServiceManager( 1563): service 'media.audio_flinger' died

我无法知道openGl有什么问题?当我尝试棒棒糖时,Kitkat在我的设备上运行良好,我遇到了这个问题

这是因为/system/lib/egl或/vendor/lib/egl中没有找到OpenGL ES库

添加到colordancer的答案中,这里是报告致命错误:

https://android.googlesource.com/platform/frameworks/native/+/android-7.0.0_r1/opengl/libs/EGL/Loader.cpp # 229

这是因为在/vendor或/system分区中没有找到EGL ES库

目前

libEGL.so
libGLESv2.so
libGLESv1_CM.so

这些是Android上可用的EGL ES库。

解决方案:简单地从库存存储器中找到文件并将其放入rom中,并检查是否继续。如果是,您可以将其添加到供应商预构建中。如果没有,则可能有其他问题

指出

目前在我的OnePlus 2上,运行我的halogenOS构建,有以下内容:

在<<p> strong>/供应商
root@:/vendor # busybox find . | grep egl                                  
./lib/egl
./lib/egl/eglSubDriverAndroid.so
./lib/egl/libEGL_adreno.so
./lib/egl/libGLESv1_CM_adreno.so
./lib/egl/libGLESv2_adreno.so
./lib/egl/libQTapGLES.so
./lib/egl/libq3dtools_adreno.so
./lib/egl/libq3dtools_esx.so
./lib64/egl
./lib64/egl/eglSubDriverAndroid.so
./lib64/egl/libEGL_adreno.so
./lib64/egl/libGLESv1_CM_adreno.so
./lib64/egl/libGLESv2_adreno.so
./lib64/egl/libQTapGLES.so
./lib64/egl/libq3dtools_adreno.so
./lib64/egl/libq3dtools_esx.so

/system

root@:/system # find . | grep egl
./app/Gallery2/lib/arm64/libjni_eglfence.so
./lib64/libjni_eglfence.so
./vendor/lib/egl
./vendor/lib/egl/eglSubDriverAndroid.so
./vendor/lib/egl/libEGL_adreno.so
./vendor/lib/egl/libGLESv1_CM_adreno.so
./vendor/lib/egl/libGLESv2_adreno.so
./vendor/lib/egl/libQTapGLES.so
./vendor/lib/egl/libq3dtools_adreno.so
./vendor/lib/egl/libq3dtools_esx.so
./vendor/lib64/egl
./vendor/lib64/egl/eglSubDriverAndroid.so
./vendor/lib64/egl/libEGL_adreno.so
./vendor/lib64/egl/libGLESv1_CM_adreno.so
./vendor/lib64/egl/libGLESv2_adreno.so
./vendor/lib64/egl/libQTapGLES.so
./vendor/lib64/egl/libq3dtools_adreno.so
./vendor/lib64/egl/libq3dtools_esx.so

1)下载相应的硬件驱动程序,特别是提供egl实现的GPU驱动程序,如libGLESv2_andreno.so, libGLESv2.so...,并将二进制文件解压到AOSP目录中。

参考链接:https://developers.google.com/android/nexus/drivers

2)重建Android系统映像

让-j8

3)擦除数据并将图像刻录到设备

fastboot - w

fastboot flashall

您似乎没有包含所需的专有库。

请按照此链接中的说明下载特定的库。然后,将二进制文件放在AOSP源项目的根目录中,并执行

make clobber && make -j4

最新更新