分析与Android编译模块相关的关键性mk文件

在Android系统移植和裁剪过程中,关键性的mk文件起到决定性作用。错误地注释package==>app下的Android.mk文件并不能阻止编译,而应该关注'build/target/product/'目录下的文件,如generic_no_telephony.mk和telephony.mk。编译过程涉及setenv、envsetup.sh、main.mk等多个编译脚本,裁剪部分主要集中在core.mk和telephony相关mk文件。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、前言

在移植和裁剪安卓系统的时候,我们需要添加一些app、模块和服务等东西,那么就需要找到一些关键性的mk文件进行修改。刚开始的时候我天真的以为裁剪一些系统apk文件是在package==>app文件夹下面的Android.mk文件进行修改,把include $(BUILD_PACKAGE)注释掉就行了,事实上这样做并不能阻止安卓编译该模块,反而还会导致编译出错。下面我试着分析安卓系统那些"mk"文件才是关键性的文件。

二、定位关键目录

刚开始移植安卓的时候一直在“devices/自家产品目录/”下面修改各种".mk"文件,这样可以定制安卓一部分功能,其他核心功能需要在“build/target/product/”目录下修改“mk”文件。下面看看build目录下有啥东西:

~/workspace/tiny4412/android-4.2.2_r1$ ls build/
buildspec.mk.default  CleanSpec.mk  core  envsetup.sh  libs  target  tools

~/workspace/tiny4412/android-4.2.2_r1$ ls build/core/
apicheck_msg_current.txt  distdir.mk              java.mk                   process_wrapper_gdb.sh
apicheck_msg_last.txt     droiddoc.mk             legacy_prebuilts.mk       process_wrapper.sh
base_rules.mk             dumpvar.mk              llvm_config.mk            product_config.mk
binary.mk                 dynamic_binary.mk       main.mk                   product.mk
build_id.mk               envsetup.mk             Makefile                  proguard.emma.flags
build-system.html         executable.mk           multi_prebuilt.mk         proguard.flags
checktree                 filter_symbols.sh       native_test.mk            proguard_tests.flags
cleanbuild.mk             find-jdk-tools-jar.sh   node_fns.mk               raw_executable.mk
cleanspec.mk              help.mk                 notice_files.mk           raw_static_library.mk
clear_vars.mk             host_executable.mk      package.mk                root.mk
combo                     host_java_library.mk    pathmap.mk                shared_library.mk
config.mk                 host_native_test.mk     pdk_config.mk             static_java_library.mk
copy_headers.mk           host_prebuilt.mk        phony_package.mk          static_library.mk
definitions.mk            host_shared_library.mk  post_clean.mk             tasks
devic
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值