1.內核編譯前的工具準備。
a.安裝VMare10,ubuntu10.04,筆者安裝的爲前面的版本。可以選擇其他版本,儘量版本不要太高,不利於開發。
b.部署linux系統的環境,例如gcc、服務等環境。
2.獲取openwrt源碼包,可以使用git或SVN從openwrt官網獲取。
因爲筆者使用的是臺灣聯發科技的單芯片解決方案MT7628芯片。所以該廠商也提供了相關的SDK,該SDK跟openwrt源碼基本相同,只是經過MT7628芯片廠商包裝成自己的SDK而已。
壓縮包大小隻有九十多兆,在編譯過程中會從網絡下載很多的文件,所以編譯過程中,要保證linux連接外網。
只要拿來在linux解壓編譯即可。
3.解壓成功之後如下圖所示,源碼包的內部結構,與openwrt的源碼包結構大致相同。
4.make menuconfig配置內核時,出現如下錯誤:
提示:不要用root用戶編譯內核。
解決辦法:命令行中輸入vi include/prereq-build.mk
如下注釋掉即可
5.make menuconfig後進入內核設置過程,根據芯片還有需要使用的外圍設備選擇
6.選擇好後,終端命令make
編譯時間很長,一個90多M編譯結束10個多G,可想而知,從上午8點半編譯到下午4點多。
編譯結束源碼目錄如下,一些文件夾是編譯過程中生成的。
7.進入bin目錄下,拷出相關bin文件,燒錄 今目標板即可。其中生成的有目標SDK、工具鏈等文件。
8.下章介紹開發前的環境部署。包擴目標開發板環境與window環境(即linux中的環境)。