/********************************************************************************************
* author:conowen@大钟
* E-mail:conowen@hotmail.com
* http://blog.csdn.net/conowen
* 注:本文为原创,仅作为学习交流使用,转载请标明作者及出处。
********************************************************************************************/
在执行编译之前要先配置内核kernel.img的路径。
修改BoardConfig.mk文件
修改device/rockchip/rk29sdk/BoardConfig.mk文件中的值TARGET_PREBUILT_KERNEL指向Image文件
TARGET_PREBUILT_KERNEL := ./Image
注:上述Image实际是kernel.img,文件名改成Image而已,路径地址可以为相对地址“./”,也可以为绝对路径地址
然后把SDK包的Image复制到SDK包的根目录。
然后开始
编译步骤:
第一步:make prebuild
第二步:make
第三步:./mkimage ota
第一步为编译的准备工作
如下
若工程内存为ddr3,则在执行第二步之前要先执行
make rk29_ddr3sdk_defconfig
第二步的make后面可以加参数 -jn,其中j为jobs,即作业,n为数值,一般为cpu的线程数
如四核四线程cpu可写作
第三步./mkimage把一些apk、驱动、资源等等打包生成image文件,也就是可以自己定制image。而相应的apk、驱动之类的在/out/target/product/rk29sdk目录下,删除自己不喜欢的,然后执行第三步,就可以生成相对应的image了。存放在SDK包的reckdev目录下的Image文件夹下,刷机用此image刷机即可。
注:
第三步若是没有加ota参数,则生成的boot.img没有包含kernel.img,方便单独烧写内核,便于开发。
而recovery.img本就是有kernel.img的。若要更新kernel,则要重新编译(执行第二步)
各个image的大小
Boot.img(没有kernel.img)为 500K,含有kernel 的话,为6MRecover.img为11M
System.img为120M
Kernel为5M
Misc.img为50K