?畢業(yè)設(shè)計要編譯linux內(nèi)核,因為要做一個嵌入式網(wǎng)關(guān),目前先想著用uClinux,先打算在skyeye下測試后,再移植到開發(fā)板上。先是從網(wǎng)上下一些關(guān)于怎么編譯uClinux內(nèi)核的資料,網(wǎng)上資料的確很多,看了大多是uClinux-dist2004....的,而我到www.uClinux.org上只看到dist2007的,真搞不清楚,怎么就是沒有2004的。
?? 先是要配置交叉編譯環(huán)境,下了arm-elf-gcc,以及uClib安裝后,進(jìn)入uClinux-dist目錄,按照網(wǎng)上介紹的對于uClinux-dist 2004的方面,對一些文件進(jìn)行修改,編譯,出錯,說沒有ufront-gcc,真是奇怪,上網(wǎng)查資料,發(fā)現(xiàn)我這個是需要arm-linux-gcc的,原來這個版本的uClinux還真不行,下了arm-linux-gcc3.4.1解壓,建立環(huán)境變量,然后
make menuconfig??
make dep
make clean
make lib_only
make user_only 在編譯boa時出錯
查了一下出錯的原因,為這個花了將的一天,采取了多種方式,查資料再加上自已的猜測,最后查明是硬浮點問題,內(nèi)核要求是軟浮點,看到一些類似的解決辦法,如將軟浮點去掉,可是這個里面的Makefile文件太復(fù)雜了,改了便沒有成功,也有說編譯器要打個patch,半天也沒有找著,因為我現(xiàn)在編譯是2.4內(nèi)核,估計在內(nèi)核2.6下應(yīng)該是可以的,看來還是我這個2007的uClinux不好用啊。我還想著把它編譯出來,但結(jié)果還是是失敗了。打算改道了。
?? 通過QQ得到網(wǎng)友支持,給了我一個uClinux2004的下載地址,還是在www.uClinux.org上的,我是怎么找也找不到。再按照網(wǎng)上介紹的編譯,通過看那些編譯信息,這個用的交叉編譯環(huán)境是arm-elf-gcc。出了幾個小錯誤,很好改。
make romfs
make image
make
生成了images文件夾,在linux-2.4.x下也生成了linux文件,看來還是2004的好弄的。
下一步就是在skyeye下測試了,沒有通過,run后就沒有反應(yīng)了,猜測是沒有進(jìn)行剪裁,太大了,超出了硬件的資源了。光linux文件就有20多M。下一步就是就我的需求進(jìn)行剪裁吧。
???