查了很多文档,都说是JDK版本的问题,google的官方文档也说明了一定要用Jdk1.5,还是有些人就不信这个,比如我。。。坚持用jdk1.6,结果就冒出这个错误。可重新下了JDK1.5,配置了环境之后,再make依然没有解决,这时的jdk已经换成1.5了。在无数次的JDK1.5,1.6卸载,安装,切换之后还是没解决,中间还被折腾得去睡了觉。
醒了之后,突然想到,之前用JDK1.6已经编出了一部分东西,会不会是因为这个对下面会产生影响。于是make clean 之后 再重新make居然神奇的通过了,2个小时之后,终于编出来了。希望能对遇到同样错误的人,有所帮助,不至于像我这么蠢。
opencore十分庞大,对于里面复杂的逻辑关系,想搞清楚,不是仅仅阅读source就可以解决的。 这时通过log就可以起到一定的帮助作用,默认情况下,android并没启用pvlog,这是可以在编译源码的时候启用这个log 。输入命令:
重新编译源码.
如何用自己编号的img文件来启动模拟器,我们可以简单替换掉原来SDK/platforms下的img文件,但是这样太费事了些,可以写个脚本来启动自己的模拟器。
定义好ANDROID_PRODUCT_OUT
------------------------------------------------------------------------------------------------------------------------
sudo gedit /etc/profile
增加
export ANDROID_PRODUCT_OUT=[your android path]/out/target/product/generic
完成了之后
source /etc/profile
------------------------------------------------------------------------------------------------------------------------
脚本文件start2.2.sh指定编辑好的3个img文件
------------------------------------------------------------------------------------------------------------------------
#!/bin/sh
emulator -avd myTest2.2 -system $ANDROID_PRODUCT_OUT/system.img -ramdisk $ANDROID_PRODUCT_OUT/ramdisk.img -initdata $ANDROID_PRODUCT/userdata.img -sdcard /home/pp/work/tool/bejingwork/sdcard.img &
--------------------------------------------------------------------------------------------------------------------------