linux內核學習-編譯架構-2.內核的Makefile文件

有關makefile語法的內容,可以Google下”“跟我一起學makefile”。講的挺好的,第一次看可能看的一塌糊塗。看多幾次就好了。

內核的makfile在源碼目錄Documentation\kbuild\makefiles.txt也有介紹。

一、內核的Makefile涉及到5部分的內容

1.Makefile, 位於kernel根目錄, 頂層Makefile. 最終目的是編譯內核, 生成 vmlinux 和 modules.
2。 .config, kernel配置文件, 已在 kernel之編譯體驗分析過生成方式和過程
3.arch/$(ARCH)/Makefile, 芯片架構相關的Makefile
4.scripts/Makefile.*, Makefile的規則和腳本
5.kbuild Makefiles, 即各子目錄下的Makefile, 最終都會被頂層Makefile調用的.

小知識
obj-y, 表示需要編譯進內核, 其形式很簡單

obj-$(CONFIG_DM9000) += dm9dev9000c.o, 含變量的形式.
obj-y += dm9dev9000c.o, 替換變量後的直觀形式.
obj-m, 表示需要編譯爲.ko模塊. 有三種形式

https://draapho.github.io/2017/09/14/1724-kernel-makefile/

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章