本文將介紹如何為QEMU RISC-V虛擬平臺構建OpenHarmony輕量系統。得益于QEMU的CPU指令集模擬執行能力,該方法可以在沒有開發板的情況下調試和運行OpenHarmony系統源碼。本文介紹的該方法,可以用于OpenHarmony操作系統源碼的學習和研究。
一、背景介紹
QEMU是一個開源的虛擬化平臺,它可以實現目標平臺的CPU指令級別的模擬。因此,可以使用QEMU進行操作系統的學習和研究,也可以在沒有硬件的情況下對開發板進行模擬。
QEMU是一款開源的虛擬機監控程序,可模擬多種硬件環境,并支持多種處理器架構。它能夠在不同平臺上實現虛擬化,運行各種操作系統。QEMU具有高度的靈活性和可移植性,被廣泛用于開發、測試和部署虛擬化環境。
二、準備OpenHarmony源代碼
開始之前,需要準備:
- Ubuntu 系統的開發環境(可以是物理主機也可以是虛擬機);
- 下載OpenHarmony 4.1 Release源代碼,參考此前帖子:
- [【開源鴻蒙】下載 OpenHarmony 4.1 Release 源代碼]
三、準備hb命令
3.1 安裝hb命令
編譯OpenHarmony源碼之前,需要先安裝hb命令。
# 跳轉到OpenHarmony源碼目錄,例如上一篇文章介紹的 OpenHarmony 4.0 Release
cd ohos/openharmony
# 如果沒有 pip 命令,則需要先安裝 python3-pip
# sudo apt install python3-pip
# 安裝 hb 命令:
pip install build/hb
安裝成功如下圖所示:
3.2 檢查hb命令
安裝完成后,可以通過 hb help命令測試是否可以正常使用。
如果 報告 command not found ,如下圖所示:
則表明hb所在目錄沒有加到PATH環境變量中,如果是Ubuntu系統,需要先檢查~/.profile文件是否存在,并檢查其中是否有如下代碼:
# set PATH so it includes user's private bin if it exists
if [ -d "$HOME/.local/bin" ] ; then
PATH="$HOME/.local/bin:$PATH"
fi
如果有以上代碼,關閉當前shell會話,重新打開,就可以正常使用hb命令了。
如果沒有~/.profile文件,則可以將以上代碼添加到 ~/.bashrc 文件中。
如果報告Please call hb utilities inside ohos source directory,則是正常的,需要在ohos源碼目錄下執行hb命令。
四、編譯RISC-V架構的OpenHarmony輕量系統
4.1 設置hb構建目標
開始編譯之前,首先需要設置hb構建的目標產品或開發板是什么。使用hb set命令,進行交互式設置。
依次選擇 mini → qemu_riscv_mini_system_demo
設置完成后,會在源碼目錄的頂層生成 ohos_config.json 文件,內容如下:
4.2 啟動hb構建過程
使用hb set設置完目標平臺后,就可以使用hb build命令進行編譯了。
構建完成后,輸出如下:
五、問題解決
5.1 hb set 報錯問題解決
如果遇到報錯:cannot import name 'Mapping' from 'collections’
這個報錯是因為Python 3.10中,Mapping已經不在collections包中了。
解決方法,修改文件: ~/.local/lib/python3.10/site-packages/prompt_toolkit/styles/from_dict.py
手動將 collections 改為 collections.abc 即可。
六、參考鏈接
- OpenHarmony官網: [https://www.openharmony.cn/]
- OpenHarmony編譯形態整體說明: [https://docs.openharmony.cn/pages/v4.0/zh-cn/device-dev/quick-start/quickstart-appendix-compiledform.md]
- OpenHarmony代碼倉: [https://gitee.com/openharmony/]
審核編輯 黃宇
-
開源
+關注
關注
3文章
3126瀏覽量
42068 -
RISC-V
+關注
關注
44文章
2141瀏覽量
45708 -
qemu
+關注
關注
0文章
57瀏覽量
5298 -
鴻蒙
+關注
關注
56文章
2267瀏覽量
42486 -
OpenHarmony
+關注
關注
25文章
3548瀏覽量
15737
發布評論請先 登錄
相關推薦
評論