拿到LINUX內核的源碼,接下來就是編譯內核了。從linux官方下載的源碼直接編譯時會出問題的。需要做適當的移植。這個過程很是痛苦。內核是一個龐大的系統,內部代碼依賴關聯很多。牽一髮而動全身。所以我一般都是直接使用SOC供應商提供的已經移植的源碼。如果沒有移植源碼,都會找相似的架構的源碼來修改。其實一級IC生廠商如高通三星都會針對這個SOC發佈對應demo板,demo板都會配套源碼一起發佈。然後再根據demo板做進一步完善。
使用的開發板
GEC210
以下使用的是開發板的已經移植好的代碼。
編譯步驟
1.解壓內核
tar jxvf linux-2.6.35.7-gec-v3.0.tar.bz2
cd linux-2.6.35.7-gec-v3.0
2.創建.config配置文件
我們做了很多配置文件,可根據您的硬件需求來決定執行哪條命令(注意 config 前的“.”)
#cp GEC210_7INCH_CONFIG-TSC2007 .config ===>7 寸電阻屏
#cp GEC210_1024X768_CONFIG .config ===>1024x768VGA 輸出
#cp GEC210_4.3INCH_CONFIG .config ===>4.3 寸電阻屏
#cp GEC210_7INCH_CONFIG-FT5x06 .config ===>7 寸電容屏
我的開發板是7寸電容屏,所以在源碼根目錄下,輸入
cp GEC210_7INCH_CONFIG-FT5x06 .config
3.安裝系統需要的組件
sudo apt-get install ncurses-dev
4.創建Makefile文件
make menuconfig
5.編譯源碼
-j4是指用4個線程編譯源碼,這樣可以提供。如果電腦CPU強大,可以設置成6.設置太大,可能會因爲依賴關係而出錯。
make -j4
6.拿到編譯後的結果
在arch/arm/boot目錄下可以看到zImage的文件。這個就是最終結果。按照燒錄方法燒錄進去就行。