用友善提供的Android和kernel源碼在Ubuntu上編譯,過程還算順利。只是編android的時候為了不out of memory只好啟動到text界面,並且編了一晚上,Asus S5200您辛苦了。
接下來連6410開發板串口,燒kernel,燒android ubifs,boot!結果屏幕上android光標閃啊閃,然後就黑屏了。串口一直輸出:
init: untracked pid 1129 exited
init: untracked pid 1122 exited
ps看了下是/system/bin/mediaserver和/system/bin/netd這兩個進程,一直出錯,一直重啟。看來這個android image有問題了。接下來保持kernel不變,燒光盤自帶的android,順利進入。這下有希望了,當你一直做錯的時候,那就找個做對的學習一下吧。
換上自編的android,logcat一下,出錯的log為:
04-25 02:57:37.440 D/libEGL ( 1197): loaded /system/lib/egl/libGLES_mini6410.so
04-25 02:57:37.450 E/libGLES_mini6410( 1197): Check driver failed, -89
04-25 02:57:37.450 W/libEGL ( 1197): 0: eglInitialize(0x1) failed (EGL_SUCCESS)
04-25 02:57:37.450 E/libEGL ( 1197): eglInitialize:766 error 3001 (EGL_NOT_INITIALIZED)
04-25 02:57:37.460 E/SurfaceFlinger( 1197): couldn't find an EGLConfig matching the screen format
google了一下才知道是opengl相關的庫,而正確的android的log為:
04-25 07:37:30.670 D/libEGL ( 1217): egl.cfg not found, using default config
04-25 07:37:30.690 D/libEGL ( 1217): loaded /system/lib/egl/libGLES_android.so
04-25 07:37:30.710 W/zipro ( 1217): Unable to open zip '/data/local/bootanimation.zip': No such file or directory
04-25 07:37:30.710 W/zipro ( 1217): Unable to open zip '/system/media/bootanimation.zip': No such file or directory
看來是友善自己加的庫在我這裡有問題,怪不得自帶的光盤裡都沒用。。。找到vendor/friendly-arm/mini6410/rootdir/system/lib/egl/egl.cfg,刪除,重新制作rootfs。哈哈搞定
更多Android相關信息見Android 專題頁面 http://www.linuxidc.com/topicnews.aspx?tid=11