前言
前面大體上搭建了 RT-Thread BSP qemu-virt64-aarch64 的交叉編譯環境,運行后發現,文件系統沒有掛載上,感覺是沒有 mkfs。
通過RT-Thread 官方的文檔,找到了解決方法
創建獨立的 qemu-virt64-aarch64 工程
不是特別喜歡直接使用 git clone 下來的 RT-Thread 源碼工程作為開發驗證工程,主要是包含了太多不使用的BSP,代碼過多,體積過大。
于是重新整理一個精簡的 qemu-virt64-aarch64 工程
(1) rt-threadbspqemu-virt64-aarch64 -> 復制 qemu-virt64-aarch64
(2)rt-thread 把 .git 目錄 bsp 等項目無關的目錄去除,復制到 rt-thread目錄
由于路徑更改了,所以 進入 qemu-virt64-aarch64 scons 編譯或報錯,簡單修復一下 構建路徑即可
交叉編譯環境
運行
shell 執行 ./qemu.sh 后,發現 ls 提示
msh />ls
No such directory
初步判斷是沒有開啟 文件系統,不過通過 scons --menuconfig 查看,文件系統相關的組件已經開啟了
解決文件系統無法掛載問題
通過查看 qemu.sh 腳本發現, sd.bin 應該沒有任何的內容,所以需要格式化
通過 RT-Thread 官方的文檔,發現確實需要這么做,并且 mkfs 后,還需要退出 qemu 再次進入就可以正常的識別文件系統了
操作方法:list device 找到 sd 卡相關的設備
msh />list device
device type ref count
vport0p1 Character Device 0
vport0p0 Character Device 0
virtio-console0 Character Device 0
virtio-blk0 Block Device 0
rtc RTC 0
gpio Pin Device 0
zero Miscellaneous Device 0
urandom Miscellaneous Device 0
random Miscellaneous Device 0
null Miscellaneous Device 0
uart0 Character Device 2
這里是 virtio-blk0 設備,執行 mkfs virtio-blk0
退出 qemu,CTRL + a 組合鍵按下后,松開,再按一下 x 鍵
再次進入 qemu,發現正常識別文件系統了
小結
qemu 文件系統識別了,接下來繼續研究一下其他的功能
可以使用 qemu 評估一些平臺無關的軟件組件,這樣可以提高效率。
-
SD卡
+關注
關注
2文章
564瀏覽量
63890 -
RT-Thread
+關注
關注
31文章
1285瀏覽量
40089 -
qemu
+關注
關注
0文章
57瀏覽量
5354
發布評論請先 登錄
相關推薦
評論