使用 AOSP 对 dts 进行更改后如何在不使用 make clean 的情况下构建?
Posted
技术标签:
【中文标题】使用 AOSP 对 dts 进行更改后如何在不使用 make clean 的情况下构建?【英文标题】:How to build without make clean after making changes in dts with AOSP? 【发布时间】:2021-04-20 10:35:53 【问题描述】:我对 dts 进行了一些更改,当我从我的 aosp-root-directory
给 make -j8
时,我没有看到在构建它并启动我的板后发生了变化。它只是在一分钟左右的时间内快速构建。要进行更改,我必须提供make clean
。
进行 make clean 大约需要 4 小时。每次我对我的 build/dts 进行任何更改时,我是否必须进行 make clean,或者我们可以以某种方式只清理内核并在不清理整个 OUT
目录的情况下构建它?
【问题讨论】:
【参考方案1】:为了强制执行更改并确保它们存在于映像中,我在 make 之前手动删除了系统和供应商映像:
find ./out -name vendor.img -delete -o -name system.img -delete
然后做:
make -j8
【讨论】:
但我不认为如果我在内核、系统和供应商的 img 上进行更改,对吧? 我没有尝试修改dts,但你可以尝试删除dt.img
,boot*.img
...【参考方案2】:
在大多数情况下,构建系统应获取更改。但为了确保并缩短构建时间,您可以使用 make installclean
而不是 make clean
并再次构建。
另外,考虑启用编译器缓存 (ccache) 以加快后续构建。
在此处检查 ccache 的标志: https://cs.android.com/android/platform/superproject/+/master:build/make/core/ccache.mk
【讨论】:
以上是关于使用 AOSP 对 dts 进行更改后如何在不使用 make clean 的情况下构建?的主要内容,如果未能解决你的问题,请参考以下文章