硬件平臺: FL2440
操作系統(tǒng): Linux2.6.28.7
交叉編譯工具: arm-linux-gcc-3.4.1
飛凌公司默認(rèn)的文件系統(tǒng),不具有文件延伸功能,比如在 /dev 下有 mmcblk0p1 這個文件,在 掛載 SD 卡驅(qū)動時,需要敲入命令 mount /dev/mmcblk0p1 ,如果具有延伸功能,在敲入 mm 后,可以直接按 TAB 鍵,如果 /dev 目錄下只有一個以 mm 形狀的文件,將會自動補(bǔ)全后面的字符。初步推斷該功能應(yīng)該為 busybox 集成,從網(wǎng)上下載 busybox-1.9.2.tar.bz2 ,計劃安裝該版本的 busybox 。
第一步: 下載 busybox 源代碼: http://busybox.net/downloads/busybox-1.9.2.tar.bz2
解壓:
tar jxf busybox-1.9.2.tar.bz2
第二步:修改 makefile 中的 174 行的 arch 和編譯工具鏈頭:
ARCH ?= arm
CROSS_COMPILE ?= /usr/local/arm/3.4.1/bin/arm-linux-
第三步: make menuconfig. 修改編譯配置選項,參考如下設(shè)置:
其他使用默認(rèn)設(shè)置。
第四步: 編譯 busybox
make install
在 busybox/_install 目錄下會生成 busybox 文件。同時,在解壓的當(dāng)前目錄也會存在該文件。
第五步:修改 busybox 的文件屬性
chmod 777 busybox
必須要修改屬性,否則可能造成無法啟動文件系統(tǒng)。
第六步:將新生成的 busybox 替換掉原來的文件,在文件系統(tǒng)根目錄的 bin 目錄下。
第七步:替換 busybox 所需要的庫文件。這一步很關(guān)鍵,使用不同版本的交叉編譯工具編譯出來的 busybox ,所使用的庫是不同的。 FL2440 提供的 busybox 使用的 3.3.2 的交叉編譯工具,這里我們使用的 3.4.1 的版本,因此有必要替換掉原來的 lib 文件。如果不替換,啟動系統(tǒng)時將出現(xiàn)如下錯誤:
Failed to execute /linuxrc. Attempting defaults...
busybox 使用的庫在如下路徑:
/usr/local/arm/3.4.1/arm-linux/lib
這里因交叉編譯環(huán)境安裝路徑不同而有所差異。將該目錄下的 *.so,*.so.*,*.a, 全拷備到根文件系統(tǒng)的 lib 目錄下,有文件重命名的直接覆蓋,刪除里面一些不必要的庫文件,如 *jpeg* 等,否則會出現(xiàn)壓縮的文件系統(tǒng)過大而燒不進(jìn)去的現(xiàn)象。
第八步:使用 mkyaffs2image 工具制作文件系統(tǒng):
./mkyaffs2image qte_yaffs qte.yaffs
第九步:擦除開發(fā)板上的 rootfs 文件系統(tǒng)分區(qū),重新下載新生成的文件系統(tǒng),重啟開發(fā)板。
第十步:這時已經(jīng)能夠正常進(jìn)入控制臺,但是彈出如下錯誤提示:
mdev: /etc/mdev.conf: No such file or directory
在文件系統(tǒng)的 etc 下新建一個空文件 mdev.conf ,另外修改 /etc/init.d 下的 rcS 文件的最后一行為 exec /usr/etc/rc.touch ,以支持觸摸屏,默認(rèn)為支持鼠標(biāo)。
第十一步:再次制作文件系統(tǒng),同第八步,然后擦除 rootfs 文件系統(tǒng)分區(qū),重新下載最新的文件系統(tǒng),重啟開發(fā)板。這時一切正常。
第十二步:嘗試掛載 SD 卡驅(qū)動,或者使用 busybox 提供的相關(guān)命令,這次已經(jīng)具備敲命令按 TAB 鍵延伸的功能了。
注:
制作過程中可能遇到文件系統(tǒng)大于64M,由于fl2440內(nèi)存64M,不可能下載下來,所以可以先刪除/usr目錄下有關(guān)圖片等文件,燒完之后,再copy回去即可。
更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯(lián)系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機(jī)微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
