1. 程式人生 > >mini2440 官方linux-2.6內核文件zImage編譯

mini2440 官方linux-2.6內核文件zImage編譯

clas pdf rdp slb 重新編譯 int ron 最新 active

官方linux-2.6內核文件zImage編譯

by HYH | 2018 年 1 月 1 日 下午 5:34

一.說明

1.編譯linux內核需要make和arm的交叉編譯工具鏈(gcc),由於linux-2.6較老,采用友善之臂官方的gcc即可,不要采用最新的gcc。

2.編譯過程中需要ncurses和zlib的支持庫。對於Debian系的linux用一下指令即可:

apt-get install ncurses-dev zlib1g-dev

技術分享圖片

3.編譯過程中還可能用到tar和任意一種文本編輯器(vim,nano等)。

二 .編譯

1.解壓

tar -xf linux-2.6.32.2-mini2440*.tgz

cd linux-2.6.32.2

技術分享圖片

2.配置

在linux內核目錄下有許多config_mini2440_*(不同的地方就是屏幕型號,主要區別在lcd驅動的不同)。

復制自己的屏幕的配置文件名字為.config

cp config_mini2440_* .config

make menuconfig

按幾下Esc回到終端

技術分享圖片

技術分享圖片

如果想要調整默認內核參數(方便調試)可用文本編輯器編輯.config中的

CONFIG_CMDLINE=”調整後的內核引導參數”

技術分享圖片

技術分享圖片

3 .編譯

make zImage

技術分享圖片

技術分享圖片

如果沒有錯誤,一段時間後就可在arch/arm/boot/找到zImage,成功編譯後,就可以對linux內核進行調試或修改之後重新編譯了。

4.修正一些錯誤

1)如果遇到以下錯誤

技術分享圖片

編輯kernel/timeconst.pl

將373行的defined(@val)換成(@val)

技術分享圖片

然後重新編譯即可。

三 .效果

技術分享圖片

技術分享圖片

由於沒有根文件系統,故qemu模擬時,不能進入最終界面,只能在內核啟動界面。

https://hyhsystem.cn/wordpress/


mini2440 官方linux-2.6內核文件zImage編譯