我正在尝试在我的设备上运行棒棒糖,当我闪现图像时,我得到了以下日志
--------- 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