核心的配置和編譯大致涉及三類主要檔案:kconfig、.config、makefile。它們之間的關係大致可用下圖描述;
1. kconfig(詳細內容可參見kbuild/kconfig_language.txt)
核心配置選項的原始檔。arch/$(arch)/kconfig是主kconfig檔案,與具體體系結構有關,主kconfig會呼叫其他子目錄的kconfig檔案,其他的kconfig檔案會呼叫各級目錄的kconfig檔案,形成樹狀結構。需要注意的是只有被依賴選項已經選中,自選項才會顯示。
2. .config
最終編譯的核心配置選項,主要生成方式有兩種:
a)由make ***config進行配置儲存後生成
make config #通過命令列更新配置檔案
make menuconfig #通過選單程式更新配置檔案
make xconfig #通過qt圖形介面更新配置檔案
make gconfig #通過gtk圖形介面更新配置檔案
make oldconfig #使用已提供的.config配置檔案
make randconfig #使用隨機配置的配置檔案
make defconfig #使用預設配置
make allmodconfig #配置選項盡可能選"m"
make allyesconfig #配置選項盡可能選"y"
make allnoconfig #配置選項盡可能選"n"
b)複製arch/$(arch)/configs/***_defconfig預設配置
cp arch/$(arch)/configs/***_defconfig .config
3.makefile(詳細內容可參見kbuild/makefile.txt)
定義了配置和編譯的規則。arch/$(arch)/makefile檔案,與具體體系結構相關,主makefile會讀取.config檔案中的配置選項編譯核心映象vmlinux以及所有的模組檔案module,它遞迴地遍歷所有核心原始碼樹中的所有子目錄,編譯所有目標檔案。
Linux 核心配置與編譯
嵌入式系統的乙個很重要的特性就是可移植可裁剪配置。這篇博文主要簡單總結下在x86體系下配置編譯核心的過程。取得原始碼後的步驟就是配置核心。使用make menuconfig命令,配置成功後儲存會在核心源 目錄下生成乙個.config檔案。這個檔案是隱藏的,需要用ls a命令才可看到。配置選項比較多,...
linux核心配置與編譯
linux核心配置與編譯 1.清除臨時檔案 1.make clean 刪除產生的檔案,但儲存配置。2.make mrproper 刪除產生的檔案同時刪除配置 3.make distclean 刪除mrproper並且刪除補丁之類的。2 對確定的目標系統的軟硬體配置情況。比如cpu 網絡卡型號,所需支...
Linux核心配置與編譯
2 編譯核心 3 安裝核心 4 清理核心 嵌入式linux核心製作 1 硬體的需求 2 軟體的需求 make config 基於檔案模式的互動式配置 make menuconfig 基於文字模式的選單型配置 一般選項這種選單型直觀 簡單 高效,如下所示 中 隱藏在解壓後檔案目標下。config 在建...