基於Zynq Linux環境搭建(四)
https://www.cnblogs.com/ifpga/p/8182036.html
此篇編譯根檔案系統
下載busybox和dropbear,
1 2 3 4 5 6 7 8 9 10 11 12 13 |
//git.busybox.net/busybox/snapshot/busybox-1_23_1.tar.gz
requested host name `git.busybox.net'.
in 13s
|
1 2 3 4 5 6 7 8 9 10 11 |
|
在busybox目錄下,預設配置並初始化
make ARCH=arm CROSS_COMPILE=arm-xilinx-linux-gnueabi- defconfig
視覺化配置
make ARCH=arm CROSS_COMPILE=arm-xilinx-linux-gnueabi- menuconfig
安裝根檔案系統到指定目錄
make ARCH=arm CROSS_COMPILE=arm-xilinx-linux-gnueabi- install
在dropbear目錄下配置dropbear
/home/fpgadeveloper/Zybo_Demo/XilinxFS/dropbear-0.53.1
1 |
|
編譯dropbear
make PROGRAMS="dropbear dbclient dropbearkey dropbearconvert scp" MULTI=1 strip
安裝dropbear並建立符號連結
sudo make install
建立軟連線,進入/home/fpgadeveloper/Zybo_Demo/XilinxFS/RootFS/usr/bin
1 |
|
將交叉編譯庫拷貝到下述目錄
sudo cp ~/SDK2015/lin/arm-xilinx-linux-gnueabi/libc/lib/* lib -r
sudo cp ~/SDK2015/lin/arm-xilinx-linux-gnueabi/libc/sbin/* sbin -r
sudo cp ~/SDK2015/lin/arm-xilinx-linux-gnueabi/libc/usr/bin/* usr/bin/ -r
1 2 3 4 |
|
在usr目錄下建立lib目錄
1 2 3 4 5 6 |
|
sudo cp ~/ SDK2015 /lin/arm-xilinx-linux-gnueabi/libc/usr/lib/* usr/lib/ -r
進入到usr/lib路徑下,刪除
sudo rm -rf locale
sudo rm -rf audit
sudo rm -rf bin
sudo rm -rf gconv
sudo rm *.a
sudo rm *.o
1 2 3 4 5 6 7 8 9 |
|
在檔案根目錄下執行
mkdir dev etc etc/dropbear etc/init.d mnt opt proc root sys tmp var var/log var/www
其中檔案都用Xilinx提供的ramdisk裡面的檔案,並拷貝到相關資料夾中
建立"etc/fstab"檔案,內容如下
touch etc/fstab
1 2 3 4 5 6 |
|
建立"etc/inittab"檔案,內容如下
1 2 3 4 5 6 7 8 9 10 |
|
建立"etc/passwd"檔案,內容如下
1 2 |
|
建立檔案"etc/init.d/rcS" ,內容如下
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
|
修改許可權
sudo chmod 755 etc/init.d/rcS
sudo chown root:root etc/init.d/rcS
製作檔案系統
dd if=/dev/zero of=ramdisknew.image bs=1024 count=32768 mke2fs -F ramdisknew.image -L "ramdisk" -b 1024 -m 0 tune2fs ramdisknew.image -i 0 chmod a+rwx ramdisknew.image sudo mount -o loop ramdisknew.image tmp_mnt_new/ sudo cp -R /home/fpgadeveloper/Zybo_Demo/XilinxFS/RootFS/* tmp_mnt_new/ cd tmp_mnt_new cd bin/ sudo cp -rf /home/fpgadeveloper/Zybo_Demo/UART_Tools/lrzsz-0.12.20/src/lrz . sudo cp -rf /home/fpgadeveloper/Zybo_Demo/UART_Tools/lrzsz-0.12.20/src/lsz . cd .. cd .. sudo umount tmp_mnt_new gzip ramdisknew.image mkimage -A arm -T ramdisk -C gzip -d ramdisknew.image.gz uramdisk.image.gz
拷貝uboot dtb *uramdisk.image.gz uImage等檔案,在SDK環境下合併
可通過qspi flash 或者SD卡啟動進行系統載入