在开发过程中,我们需要编译android工程的内核KO文件,
一种方法是修改对应模块的Makefile,编译为ko文件,需要指定 make -C 内核源码路径。
KSRC := /home/xxx/imx6_android4/filesystem/kernel_imx
make -C $(KSRC) EXTRA_CFLAGS=-fno-pic M=$(PWD) modules
另一种方法是直接在android源码目录下执行如下指令
make ARCH=arm CROSS_COMPILE=$(android源码路径)/prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.7/bin/arm-linux-androideabi- -C $(内核源码路径) M=$MODULE modules
关于 最后的 modules
编译目标在如下脚本中有说明
build/core/main.mk
.PHONY: modules
modules:
@echo "Available sub-modules:"
@echo "$(call module-names-for-tag-list,$(ALL_MODULE_TAGS))" | \
tr -s ' ' '\n' | sort -u | $(COLUMN)