linux編譯新核心

2021-06-20 17:55:16 字數 2539 閱讀 9093

//u-boot詳解

第一步 安裝必要的工具

首先要安裝必要的包。 

包有:libncurses5-dev(menuconfig需要的)和essential

sudo apt-get install build-essential kernel-package

sudo apt-get install make

sudo apt-get install gcc

另外,檢視系統是否有這樣的兩個命令 

mkinitramfs mkisofs

這兩個工具在編譯核心時用來生成 *.img檔案的。如果沒有就需安裝。

察看當前核心的版本 

helight@helight-desktop:/$ uname -a

linux helight-desktop 2.6.20-15-generic #1 smp mon aug 25 17:32:09 utc 2008 i686 gnu/linux

helight@helight-desktop:/$

第四步 開始編譯

cd /usr/src/linux-2.6.24 //以下所有的工作都在/usr/src/linux-2.6.24下完成

sudo make menuconfig  //用menuconfig的話還需要ncurses,或者用

sudo make xconfig

sudo make menuconfig  //一般是用menuconfig

配置完以後儲存(系統中儲存的乙份核心配置檔案是在/usr/src/linux-2.6.24下名為.config,你也可以自己在別的地方另存乙份)

也可以cp原來在/boot目錄下的config-2.6.xx 到當前目錄下,在make menuconfig是使用這個配置檔案。

sudo make dep    //也許系統會提示現在不必要進行make dep,那就下一步 2.6.24的我編譯就沒有使用過。

sudo make clean //清除舊資料 ,新解壓的核心原始碼就不需要這一步了

sudo make –j2 可以分兩個執行緒來進行編譯工作,不過我用make –j4 卻發現系統有9個make程序在工作。所以這個引數未必起作用。

sudo make bzimage //編譯核心,將儲存到/usr/src/linux-2.6.24/arch/i386/boot/下

sudo make modules //編譯模組

sudo make modules_install //安裝模組

sudo mkinitramfs -o /boot/initrd-2.6.24.img 2.6.24

此時可能提示找不到這樣的乙個資料夾「/lib/firmware/2.6.24」,你需要手工建立乙個這樣的資料夾。

sudo mkdir /lib/firmware/2.6.24

sudo make install //安裝核心

安裝完後/boot下將增加以下幾個檔案(用ls -l *24*檢視)

helight@helight-desktop:/boot$ ls -l *24*

-rw-r–r– 1 root root    85203 2008-03-14 22:24 config-2.6.24

-rw-r–r– 1 root root    85203 2008-03-14 20:23 config-2.6.24.old

-rw-r–r– 1 root root 37968871 2008-03-15 08:31 initrd-2.6.24.img

-rw-r–r– 1 root root  4014080 2008-03-14 22:24 initrd.img-2.6.24

-rw-r–r– 1 root root   932315 2008-03-14 22:24 system.map-2.6.24

-rw-r–r– 1 root root   932315 2008-03-14 20:23 system.map-2.6.24.old

-rw-r–r– 1 root root  1858864 2008-03-14 22:24 vmlinuz-2.6.24

-rw-r–r– 1 root root  1858864 2008-03-14 20:23 vmlinuz-2.6.24.old

helight@helight-desktop:/boot$

給/boot/grub/menu.lst  或者是 /boot/grub/grub.cfg中新增乙個新的啟動項,如我的menu.lst增加了如下一段文字

title            ubuntu, kernel 2.6.24

root            (hd0,0)

kernel          /boot/vmlinuz-2.6.24root=uuid=d7e2cf74-ebf5-4c78-ac2c-9f85a9809eae ro

initrd          /boot/initrd-2.6.24.img

從新啟動即可。

linux新核心編譯

編譯準備 os red hat as4u5 使用root使用者完成一下所有工作 到 usr src 一 編譯核心 1.在 usr src目錄解壓軟體 tar xzvf linux 2.6.22.10.tar.gz 2.建立符號鏈結.ln s linux 2.6.22.10 linux cd linu...

編譯 linux 核心

一 準備工作 tpv te0 首先說明,下面帶 號的行都是要輸入的命令列,且本文提到的所有命令列都在終端裡輸入。ixpub技術部落格 rc0p a6zx j 啟動linux系統,並用根使用者登入,進入終端模式下。6i sb w,a0 ixpub技術部落格c gng,y y ixpub技術部落格 k,...

linux編譯核心

red hat linux版本的核心編譯 make j2 編譯 make modules make modules install make install cd boot mkinitramfs o initrd.img 2.6.30.10 2.6.30.10 此項可能不需要 vim boot g...