快速编译system.img,能够使用这个命令:node
#make systemimage linux
快速编译boot.img,能够使用如下命令:布局
#make bootimage ui
快速编译userdata.img,能够使用如下命令:spa
# make userdataimage-nodepsip
可是,对于bootimage, 在不改变内存布局的状况下,能够使用如下命令:内存
#cp ./arch/arm/boot/Image ./arch/arm/boot/kernelget
#mkbootimg --kernel ./arch/arm/boot/kernel --ramdisk ../out/target/product/tcc8800/ramdisk.img --cmdlinecmd
console=ttyTCC,115200n8 --base 0x40000000 --pagesize 8192 --output ../out/target/product/tcc8800/boot.imgconsole
其实这些生成命令都在build/core/Makefile中.
生成boo.img的方法:
$(INSTALLED_BOOTIMAGE_TARGET):$(MKBOOTIMG) $(INTERNAL_BOOTIMAGE_FILES)
$(MKBOOTIMG) $(INTERNAL_BOOTIMAGE_ARGS) --output $@
......
生成system.img的方法:
define build-systemimage-target
$(MKYAFFS2) -f $(mkyaffs2_extra_flags) $(TARGET_OUT) $(1)
生成userdata.img的方法
define build-userdataimage-target
mkdir -p $(TARGET_OUT_DATA)
$(MKYAFFS2) -f $(mkyaffs2_extra_flags) $(TARGET_OUT_DATA) $(INSTALLED_USERDATAIMAGE_TARGET)
一样,ramdisk.img的生成方法为:
BUILT_RAMDISK_TARGET := $(PRODUCT_OUT)/ramdisk.img
INSTALLED_RAMDISK_TARGET := $(BUILT_RAMDISK_TARGET)
$(INSTALLED_RAMDISK_TARGET): $(MKBOOTFS) $(INTERNAL_RAMDISK_FILES) | $(MINIGZIP)
$(MKBOOTFS) $(TARGET_ROOT_OUT) | $(MINIGZIP) > $@
为方便起见,也能够在Makefile中加入如下内容:
BUILT_RAMDISK_TARGET := $(PRODUCT_OUT)/ramdisk.img
.PHONY: ramdiskimage
ramdiskimage: ${BUILT_RAMDISK_TARGET}
而后,就能够输入:make ramdiskimage 来编译ramdisk.img文件了
最简单的方法是:
out/host/linux-x86/bin/mkbootfs out/target/product/tcc8900/root |
out/host/linux-x86/bin/minigzip > out/target/product/tcc8900/ramdisk.img