核心的配置與編譯

2021-05-22 05:19:34 字數 1808 閱讀 2090

核心的配置與編譯

1、清除臨時檔案、中間檔案和配置檔案。

make clean

remove most generated files but keep the config

make mrproper

remove all generated files + config files

make distclean

mrproper+remove editor backup and patch files

2、確定目標系統的軟硬體配置情況,比如cpu的型別、網絡卡的型號

,所需支援的網路協議等。

3、使用如下命令之一配置核心:

make config:文字互動

make menuconfig:文字選單

配置後會在linux 2.6.29下新增.config的隱藏檔案,儲存配置的結果

。m:——>.o——>uimage(核心檔案)

*: ——>.o(核心模組)

空:不操作

核心配置項較多,針對相似的結構進行配置,不用一項項分別選擇

,在linux/arch/arm/configs/提供相應的參考配置檔案。

這裡選預設2410的defconfig:

[root@www configs]# pwd

/opt/studyarm/linux-2.6.29.1/arch/arm/configs

[root@www configs]# cp s3c2410_defconfig ../../../.config

[root@www linux-2.6.29.1]# make menuconfig arch=arm

進行選擇配置即可。

make oldconfig:使用已有的配置檔案(.config),但會詢問新增

的配置選項。文字互動

make xconfig:圖形化配置(需裝圖形化系統)。

4、編譯核心: (僅編譯選擇為「*」的項)

make zimage

make bzimage

在x86平台,zimage只能用於小於512k的核心

如需獲取詳細編譯資訊,使用:

make zimage v=1

make bzimage v=1

編譯好的核心位於 arch//boot/目錄下

5、編譯核心模組: (編譯選擇為「m」的項)

make modules

6、安裝核心模組:

make modules_install

功能:僅僅拷貝——將編譯好的核心模組從核心源**目錄copy到

/lib/modules下

eg. /lib/modules/2.6.29/kernel/arch/x86/kernel/

7、製作init ramdisk

mkinitrd initrd-$version $version    //$version 可以通過查

詢/lib/modules下的目錄得到

eg.mkinitrd initrd-2.6.29 2.6.29 //initrd-2.6.2可以用其他名字,但

2.6.29版本對應於/lib/modules/2.6.29 不能用其他

***************=

核心安裝(x86平台)

1、cp arch/x86/boot/bzimage  /boot/vmlinuz-$version  //vmlinuz-

$version為任意取的名字

2、cp $initrd /boot/

3、修改/etc/grub.conf或者/etc/lilo.conf

$version為所編譯的核心版本號

核心的配置與編譯

核心的配置與編譯 1.清除臨時檔案 中間檔案和配置檔案 make clean remove most generated files but keep the config make mrproper remove all generated files config files make dist...

Linux核心的編譯與配置

在編譯核心之前首先得先配置核心,通常是敲入make menuconfig來配置。不過嵌入式開發的時候我好像挺少用到的 linux核心的配置系統由下面3個部分組成簡而言之 kconfig中定義該config是否開啟,在makefile中依據這個config是否開啟來進行相應的編譯。obj config...

Linux 核心配置與編譯

嵌入式系統的乙個很重要的特性就是可移植可裁剪配置。這篇博文主要簡單總結下在x86體系下配置編譯核心的過程。取得原始碼後的步驟就是配置核心。使用make menuconfig命令,配置成功後儲存會在核心源 目錄下生成乙個.config檔案。這個檔案是隱藏的,需要用ls a命令才可看到。配置選項比較多,...