linux rootfs编译进内核,九鼎x6818开发板笔记:uboot、kernel、rootfs编译和烧写
下面記錄了如何搭建嵌入開發(fā)環(huán)境,如何編譯uboot、kernel、和文件系統(tǒng),如何燒寫鏡像以及如何配置uboot環(huán)境變量。
閱讀注意:記錄中(Base框中的內(nèi)容)一些操作故意被添加,為了展示文件內(nèi)容,故意調(diào)用cat(Ubuntu)或者type(window)命令;為了展示文件夾下的列表,故意用ls或者dir列出文件夾下的文件。記錄中xiptech@ubuntu:~$前綴的為Ubuntu下的操作,X6818#前綴的為開發(fā)板uboot操作。為了表明后面的操作是在什么平臺,我還加了“下面進(jìn)行xxx操作”的轉(zhuǎn)場描述。
準(zhǔn)備工作
下面進(jìn)行window操作
1、vm安裝ubuntu 15.04 x64
2、共享一個(gè)window目錄到ubuntu
window分享的目錄E:\SVNFile\9dx6818Studio
映射到ubuntuxiptech@ubuntu:/mnt/hgfs/Share$?pwd
/mnt/hgfs/Share
下面進(jìn)行ubuntu操作
3、ubuntu下添加一個(gè)工作目錄xiptech@ubuntu:~$?mkdir?9dx6818
4、將9dx6818共享到window
通過ui操作共享:在9dx6818文件夾上右鍵Local Network Share
或者直接修改smb.conf共享:xiptech@ubuntu:sudo?gedit?/etc/samba/smb.conf
文末尾添加[ubuntu_9dx6818]
comment?=?9dx6818?studio?on?ubuntu
path?=?/home/xiptech/9dx6818
browseable?=?yes
writable?=?yes
public?=?yes
guest?ok?=?yes
重啟samba服務(wù)xiptech@ubuntu:sudo?/etc/init.d/smbd?restart
下面進(jìn)行window操作
5、建立網(wǎng)絡(luò)映射
u-boot編譯
下面進(jìn)行ubuntu操作
1、源碼拷貝解壓
x6818_linux_160719.tar.bz2解壓到/home/xiptech/9dx6818/
編譯
u-boot配置說明:
/home/xiptech/9dx6818/x6818_linux_160719/uboot下有幾個(gè)配置
nsih.txt: uboot實(shí)際編譯的文件,默認(rèn)為 ibox6818 卡片電腦 2GB 配置文件;
nsih-2G16b-800M.txt: x6818 開發(fā)板 2GB DDR3 的配置文件;
nsih-1G16b-800M.txt: x6818 開發(fā)板配置文件;
nsih-2G8b-800M.txt: ibox6818 2GB DDR3 的配置文件;
所以我們的開發(fā)版用的是nsih-1G16b-800M.txt,寫一個(gè)編譯腳本mk_x6818_board.sh并執(zhí)行編譯xiptech@ubuntu:~/9dx6818/x6818_linux_160719$?cat?mk_x6818_board.sh
echo?"config?ddr3=1G16b-800M"
cp?uboot/nsih-1G16b-800M.txt?uboot/nsih.txt
./mk?-u
xiptech@ubuntu:~/9dx6818/x6818_linux_160719$?./mk_x6818_board.sh
輸出xiptech@ubuntu:~/9dx6818/x6818_linux_160719/out/release$?ls?*bin
ubootpak.bin
內(nèi)核編譯
編譯xiptech@ubuntu:~/9dx6818/x6818_linux_160719$?./mk?-k
輸出xiptech@ubuntu:~/9dx6818/x6818_linux_160719/out/release$?ls?*img
boot.img
文件系統(tǒng)編譯
安裝依賴軟件xiptech@ubuntu:sudo?apt-get?install?texinfo
xiptech@ubuntu:sudo?apt-get?install?git
xiptech@ubuntu:sudo?apt-get?install?lib32stdc++-4.9-dev
xiptech@ubuntu:sudo?apt-get?install?lib32z1
打開文件buildroot/output/build/host-ncurses-5.9/include/curses.h找到extern?NCURSES_EXPORT(bool)????mouse_trafo?(int*,?int*,?bool);??????????????/*?generated?*/
將這句注釋刪除掉:/*?generated?*/
編譯xiptech@ubuntu:~/9dx6818/x6818_linux_160719$?./mk?-b
輸出xiptech@ubuntu:~/9dx6818/x6818_linux_160719/out/release$?ls?*rootfs*
qt-rootfs.img
...額!文件系統(tǒng)build3個(gè)鐘頭...
fastboot燒寫鏡像
1、連接串口和usb
開發(fā)版操作SecureCRT連接開發(fā)版調(diào)試串口(default:115200、右邊那個(gè)串口),使用安卓數(shù)據(jù)線連接電腦usb和開發(fā)版OTG接口
下面進(jìn)行windows操作
2、安裝fastboot工具
安裝到E:\SVNFile\9dx6818Studio\utils\fastbootE:\SVNFile\9dx6818Studio\utils\fastboot?的目錄
2017/09/01??15:27????
2017/09/01??15:27????
2013/02/12??08:08???????????815,104?adb.exe
2013/02/12??08:08????????????96,256?AdbWinApi.dll
2013/02/12??08:08????????????60,928?AdbWinUsbApi.dl
2011/03/24??15:17?????????1,787,392?ApkInstaller.ex
2011/06/09??11:20???????????????404?ApkInstaller.in
2013/02/12??08:08???????????157,184?fastboot.exe
2010/10/23??16:04????????????????63?license
下面進(jìn)行開發(fā)板操作
3、開發(fā)板重啟并敲回車進(jìn)入u-boot
4、進(jìn)入fastboot模式X6818#?fastboot
Fastboot?Partitions:
mmc.2:?ubootpak,?img?:?0x200,?0x78000
mmc.2:?2ndboot,?img?:?0x200,?0x4000
mmc.2:?bootloader,?img?:?0x8000,?0x70000
mmc.2:?boot,?fs?:?0x100000,?0x4000000
mmc.2:?system,?fs?:?0x4100000,?0x2f200000
mmc.2:?cache,?fs?:?0x33300000,?0x1ac00000
mmc.2:?misc,?fs?:?0x4e000000,?0x800000
mmc.2:?recovery,?fs?:?0x4e900000,?0x1600000
mmc.2:?userdata,?fs?:?0x50000000,?0x0
Support?fstype?:?2nd??boot??factory??raw??fat??ext4??emmc??nand??ubi??ubifs
Reserved?part??:?partmap??mem??env??cmd
DONE:?Logo?bmp?311?by?300?(3bpp),?len=280854
DRAW:?0x47000000?->?0x46000000
Load?USB?Driver:?android
Core?usb?device?tie?configuration?done
OTG?cable?Connected!
------------------------------------------
下面進(jìn)行window操作
5、鏡像準(zhǔn)備
將需要燒寫的鏡像拷貝到E:\SVNFile\9dx6818Studio\upgrade目錄E:\SVNFile\9dx6818Studio\upgrade?的目錄
2017/08/28??15:00????????16,998,632?boot.img
2017/08/28??17:36???????536,870,912?qt-rootfs.img
2017/08/28??15:00???????????303,544?ubootpak.bin
6、燒寫
添加三個(gè)腳本用于發(fā)起燒寫,直接雙擊執(zhí)行腳本燒寫E:\SVNFile\9dx6818Studio\upgrade>type?upgrade_ubootpak.cmd
fastboot?flash?ubootpak?ubootpak.bin
pause
E:\SVNFile\9dx6818Studio\upgrade>type?upgrade_boot.cmd
fastboot?flash?boot?boot.img
pause
E:\SVNFile\9dx6818Studio\upgrade>type?"upgrade_qt-rootfs?.cmd"
fastboot?flash?system?qt-rootfs.img
pause
下面進(jìn)行開發(fā)板操作
7、u-boot環(huán)境變量配置X6818#?setenv?bootcmd?"ext4load?mmc?2:1?0x48000000?uImage;bootm?0x48000000"
X6818#?setenv?bootargs?"lcd=wy070ml?tp=gslx680-linux?root=/dev/mmcblk0p2?rw?rootfstype=ext4"
X6818#?setenv?ubootpak?1
X6818#?setenv?boot?1
X6818#?setenv?system?1
X6818#?setenv?userdata?0
X6818#?setenv?cache?0
X6818#?save
總結(jié)
以上是生活随笔為你收集整理的linux rootfs编译进内核,九鼎x6818开发板笔记:uboot、kernel、rootfs编译和烧写的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 使用html记笔记,开始学习HTML,并
- 下一篇: 机器学习之MCMC算法