一、buildroot 編譯時間長
buildroot 第一次編譯時間通常在8到11個小時,因爲第一次編譯需要download 依賴的包,因爲部分資源在國外服務器下載只有幾KB的速度;另外應該就與buildroot自身編譯方式有關了。
爲避免每次編譯都重新download依賴文件,可以將編譯好的buildroot/dl/下的文件提交至git倉庫,下次取代碼重新編譯就不用再下載了。
二、buildroot修改源碼後重新編譯不會生效
修改分兩種情況:(1)修改mk等不依賴源碼的文件 (2)修改有程序源碼,最終編譯爲可行性程序或lib
(1)這種情況似乎make cleanall後編譯也不會生效,因爲clean並沒清楚中間文件,必須刪除buildroot/output文件夾後整編
(2)可以刪除"buildroot\output\firefly_rk3308_release\build\adbd\.stamp_*" ,然後重新編譯即可(以修改adbd程序爲例)
三、編譯框架
有點類似kernel的架構
總配置文件路徑buildroot\configs --類似kernel\arch\arm64\configs
根據總的配置加載其他目錄下配置"buildroot\Config.in" --類似kernel的Kconfig 可以source其他子目錄下的Config.in文件
各個目錄下的.mk文件 --類似kernel下Makefile的作用
未完待續