99精品伊人亚洲|最近国产中文炮友|九草在线视频支援|AV网站大全最新|美女黄片免费观看|国产精品资源视频|精彩无码视频一区|91大神在线后入|伊人终合在线播放|久草综合久久中文

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

開(kāi)源鴻蒙 編譯OpenHarmony輕量系統(tǒng)QEMU RISC-V版本

碼工雜記 ? 來(lái)源:碼工雜記 ? 作者:碼工雜記 ? 2024-07-15 10:36 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

本文將介紹如何為QEMU RISC-V虛擬平臺(tái)構(gòu)建OpenHarmony輕量系統(tǒng)。得益于QEMU的CPU指令集模擬執(zhí)行能力,該方法可以在沒(méi)有開(kāi)發(fā)板的情況下調(diào)試和運(yùn)行OpenHarmony系統(tǒng)源碼。本文介紹的該方法,可以用于OpenHarmony操作系統(tǒng)源碼的學(xué)習(xí)和研究。

一、背景介紹

QEMU是一個(gè)開(kāi)源的虛擬化平臺(tái),它可以實(shí)現(xiàn)目標(biāo)平臺(tái)的CPU指令級(jí)別的模擬。因此,可以使用QEMU進(jìn)行操作系統(tǒng)的學(xué)習(xí)和研究,也可以在沒(méi)有硬件的情況下對(duì)開(kāi)發(fā)板進(jìn)行模擬。

QEMU是一款開(kāi)源的虛擬機(jī)監(jiān)控程序,可模擬多種硬件環(huán)境,并支持多種處理器架構(gòu)。它能夠在不同平臺(tái)上實(shí)現(xiàn)虛擬化,運(yùn)行各種操作系統(tǒng)。QEMU具有高度的靈活性和可移植性,被廣泛用于開(kāi)發(fā)、測(cè)試和部署虛擬化環(huán)境。

二、準(zhǔn)備OpenHarmony源代碼

開(kāi)始之前,需要準(zhǔn)備:

  • Ubuntu 系統(tǒng)的開(kāi)發(fā)環(huán)境(可以是物理主機(jī)也可以是虛擬機(jī));
  • 下載OpenHarmony 4.1 Release源代碼,參考此前帖子:
    • [【開(kāi)源鴻蒙】下載 OpenHarmony 4.1 Release 源代碼]

三、準(zhǔn)備hb命令

3.1 安裝hb命令

編譯OpenHarmony源碼之前,需要先安裝hb命令。

# 跳轉(zhuǎn)到OpenHarmony源碼目錄,例如上一篇文章介紹的 OpenHarmony 4.0 Release
cd ohos/openharmony

# 如果沒(méi)有 pip 命令,則需要先安裝 python3-pip
# sudo apt install python3-pip

# 安裝 hb 命令:
pip install build/hb

安裝成功如下圖所示:

Untitled.png

3.2 檢查hb命令

安裝完成后,可以通過(guò) hb help命令測(cè)試是否可以正常使用。

如果 報(bào)告 command not found ,如下圖所示:

Untitled 1.png

則表明hb所在目錄沒(méi)有加到PATH環(huán)境變量中,如果是Ubuntu系統(tǒng),需要先檢查~/.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

如果有以上代碼,關(guān)閉當(dāng)前shell會(huì)話,重新打開(kāi),就可以正常使用hb命令了。

如果沒(méi)有~/.profile文件,則可以將以上代碼添加到 ~/.bashrc 文件中。

如果報(bào)告Please call hb utilities inside ohos source directory,則是正常的,需要在ohos源碼目錄下執(zhí)行hb命令。

Untitled 2.png

四、編譯RISC-V架構(gòu)的OpenHarmony輕量系統(tǒng)

4.1 設(shè)置hb構(gòu)建目標(biāo)

開(kāi)始編譯之前,首先需要設(shè)置hb構(gòu)建的目標(biāo)產(chǎn)品或開(kāi)發(fā)板是什么。使用hb set命令,進(jìn)行交互式設(shè)置。

依次選擇 mini → qemu_riscv_mini_system_demo

Untitled 3.png

Untitled 4.png

設(shè)置完成后,會(huì)在源碼目錄的頂層生成 ohos_config.json 文件,內(nèi)容如下:

Untitled 5.png

4.2 啟動(dòng)hb構(gòu)建過(guò)程

使用hb set設(shè)置完目標(biāo)平臺(tái)后,就可以使用hb build命令進(jìn)行編譯了。

構(gòu)建完成后,輸出如下:

Untitled 6.png

五、問(wèn)題解決

5.1 hb set 報(bào)錯(cuò)問(wèn)題解決

如果遇到報(bào)錯(cuò):cannot import name 'Mapping' from 'collections’

Untitled 7.png

這個(gè)報(bào)錯(cuò)是因?yàn)镻ython 3.10中,Mapping已經(jīng)不在collections包中了。

解決方法,修改文件: ~/.local/lib/python3.10/site-packages/prompt_toolkit/styles/from_dict.py

手動(dòng)將 collections 改為 collections.abc 即可。

六、參考鏈接

  1. OpenHarmony官網(wǎng): [https://www.openharmony.cn/]
  2. OpenHarmony編譯形態(tài)整體說(shuō)明: [https://docs.openharmony.cn/pages/v4.0/zh-cn/device-dev/quick-start/quickstart-appendix-compiledform.md]
  3. OpenHarmony代碼倉(cāng): [https://gitee.com/openharmony/]

審核編輯 黃宇

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 開(kāi)源
    +關(guān)注

    關(guān)注

    3

    文章

    3690

    瀏覽量

    43843
  • RISC-V
    +關(guān)注

    關(guān)注

    46

    文章

    2574

    瀏覽量

    48866
  • qemu
    +關(guān)注

    關(guān)注

    0

    文章

    57

    瀏覽量

    5678
  • 鴻蒙
    +關(guān)注

    關(guān)注

    60

    文章

    2621

    瀏覽量

    44074
  • OpenHarmony
    +關(guān)注

    關(guān)注

    29

    文章

    3854

    瀏覽量

    18647
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    RISC-V中***會(huì)子活動(dòng)之一:基于RISC-V鴻蒙開(kāi)發(fā)板設(shè)計(jì)

    RISC-V廠商、研究機(jī)構(gòu)及國(guó)內(nèi)高校、開(kāi)源技術(shù)組織。 受RISC-V中***會(huì)主辦方邀請(qǐng),華秋電子聯(lián)合張飛實(shí)戰(zhàn)電子舉辦“基于RISC-V鴻蒙
    發(fā)表于 06-03 16:26

    【匯總】OpenHarmony系統(tǒng)開(kāi)發(fā)目錄和個(gè)人感悟

    前言還記得2020年9月OpenHarmony大會(huì)后,我開(kāi)始在社區(qū)寫(xiě)了一些OpenHarmony系統(tǒng)開(kāi)發(fā)的文章,基于Hi3861。轉(zhuǎn)眼已
    發(fā)表于 01-20 09:04

    從零移植OpenHarmony系統(tǒng)【1】移植思路

    摘要:本文簡(jiǎn)單介紹OpenHarmony系統(tǒng)移植,會(huì)分多篇適合群體:想自己動(dòng)手移植OpenHarmony
    發(fā)表于 01-26 17:18

    從零開(kāi)始移植OpenHarmony系統(tǒng)

    摘要:本文簡(jiǎn)單介紹OpenHarmony系統(tǒng)移植,如何使用移植示例適合群體:想自己動(dòng)手移植OpenHarmony
    發(fā)表于 02-09 18:58

    每周精選 | 16款RISC-V生態(tài)開(kāi)發(fā)板開(kāi)放申請(qǐng),全志系列項(xiàng)目開(kāi)源分享

    大家好,電子發(fā)燒友精選一周社區(qū)好帖推送給大家,同時(shí)歡迎大家留言推薦更多好帖子,一旦入選將獲得電子發(fā)燒友月度vip獎(jiǎng)勵(lì)!1、【重磅集結(jié)】16款RISC-V生態(tài)開(kāi)發(fā)板,同步開(kāi)放申請(qǐng)?jiān)囉?!推薦理由
    發(fā)表于 04-15 10:32

    我了解的RISC-V

    RISC-V芯片和軟件。雖然這不是第一個(gè)開(kāi)源指令集,但它具有重要意義,因?yàn)槠湓O(shè)計(jì)使其適用于現(xiàn)代計(jì)算設(shè)備(如倉(cāng)庫(kù)規(guī)模云計(jì)算機(jī)、高端移動(dòng)電話和微小嵌入式系統(tǒng))。設(shè)計(jì)者考慮到了這些用途中的性能與功率效率。該指令集還具
    發(fā)表于 03-19 10:52

    設(shè)備仿真模擬軟件 QEMU 8.0 發(fā)布:改進(jìn)對(duì) ARM / RISC-V 架構(gòu)支持

    轉(zhuǎn)自https://m.ithome.com/html/690345.htm 開(kāi)源 QEMU 8.0 設(shè)備仿真器和虛擬化軟件已于 4 月 19 日發(fā)布,為 ARM、RISC-V、x86、s390x
    發(fā)表于 05-05 09:48

    潤(rùn)開(kāi)鴻基于高性能RISC-V開(kāi)源架構(gòu)DAYU800通過(guò)OpenHarmony兼容性測(cè)評(píng)

    近期,江蘇潤(rùn)開(kāi)鴻數(shù)字科技有限公司(以下簡(jiǎn)稱(chēng)“潤(rùn)開(kāi)鴻”)基于高性能RISC-V開(kāi)源架構(gòu)處理器研發(fā)的OpenHarmony標(biāo)準(zhǔn)系統(tǒng)開(kāi)發(fā)平臺(tái)HH-SCDAYU800通過(guò)
    發(fā)表于 12-14 17:33

    OpenHarmony生態(tài)論壇:OpenHarmony與賽昉Risc-V共建開(kāi)源軟硬件體系

    OpenHarmony生態(tài)論壇:OpenHarmony與賽昉Risc-V共建開(kāi)源軟硬件體系
    的頭像 發(fā)表于 04-25 16:51 ?1975次閱讀
    <b class='flag-5'>OpenHarmony</b>生態(tài)論壇:<b class='flag-5'>OpenHarmony</b>與賽昉<b class='flag-5'>Risc-V</b>共建<b class='flag-5'>開(kāi)源</b>軟硬件體系

    【直播預(yù)告】OpenHarmony“芯”進(jìn)展,RISC-V專(zhuān)場(chǎng)

    OpenHarmony開(kāi)源3年,即將迎來(lái)3.2Release版本,本系列直播將分別從ARM、RISC-V、LoongArch等指令集展開(kāi),分享Ope
    的頭像 發(fā)表于 03-28 12:55 ?697次閱讀

    openKylin成功適配VisionFive 2,并推出RISC-V架構(gòu)QEMU版本系統(tǒng)鏡像

    近日,RISC-VSIG成功在VisionFive2開(kāi)發(fā)板上適配openKylin操作系統(tǒng),同時(shí)推出了openKylin系統(tǒng)RISC-V架構(gòu)QEMU
    的頭像 發(fā)表于 03-06 10:41 ?1172次閱讀
    openKylin成功適配VisionFive 2,并推出<b class='flag-5'>RISC-V</b>架構(gòu)<b class='flag-5'>QEMU</b><b class='flag-5'>版本系統(tǒng)</b>鏡像

    為什么IAR編譯器對(duì)開(kāi)源ISA:RISC-V業(yè)務(wù)至關(guān)重要?

    為什么IAR編譯器對(duì)開(kāi)源ISA:RISC-V業(yè)務(wù)至關(guān)重要? 演講ppt分享
    發(fā)表于 07-14 17:15 ?2次下載

    潤(rùn)開(kāi)鴻基于高性能RISC-V開(kāi)源架構(gòu)DAYU800通過(guò)OpenHarmony兼容性測(cè)評(píng)

    點(diǎn)擊藍(lán)字 ╳ 關(guān)注我們 開(kāi)源項(xiàng)目 OpenHarmony 是每個(gè)人的 OpenHarmony 近期,江蘇潤(rùn)開(kāi)鴻數(shù)字科技有限公司(以下簡(jiǎn)稱(chēng)“潤(rùn)開(kāi)鴻”)基于高性能RISC-V
    的頭像 發(fā)表于 11-30 21:15 ?1147次閱讀
    潤(rùn)開(kāi)鴻基于高性能<b class='flag-5'>RISC-V</b><b class='flag-5'>開(kāi)源</b>架構(gòu)DAYU800通過(guò)<b class='flag-5'>OpenHarmony</b>兼容性測(cè)評(píng)

    潤(rùn)開(kāi)鴻基于高性能RISC-V開(kāi)源架構(gòu)DAYU800通過(guò)OpenHarmony兼容性測(cè)評(píng)

    近期,江蘇潤(rùn)開(kāi)鴻數(shù)字科技有限公司(以下簡(jiǎn)稱(chēng)“潤(rùn)開(kāi)鴻”)基于高性能RISC-V開(kāi)源架構(gòu)處理器研發(fā)的OpenHarmony標(biāo)準(zhǔn)系統(tǒng)開(kāi)發(fā)平臺(tái)HH-SCDAYU800通過(guò)
    的頭像 發(fā)表于 12-15 08:02 ?958次閱讀
    潤(rùn)開(kāi)鴻基于高性能<b class='flag-5'>RISC-V</b><b class='flag-5'>開(kāi)源</b>架構(gòu)DAYU800通過(guò)<b class='flag-5'>OpenHarmony</b>兼容性測(cè)評(píng)

    開(kāi)源鴻蒙】使用QEMU運(yùn)行OpenHarmony系統(tǒng)

    本文將會(huì)介紹如何從源碼安裝QEMU 6.2.0,以及如何使用QEMU運(yùn)行OpenHarmony系統(tǒng)
    的頭像 發(fā)表于 09-14 08:51 ?1367次閱讀
    【<b class='flag-5'>開(kāi)源</b><b class='flag-5'>鴻蒙</b>】使用<b class='flag-5'>QEMU</b>運(yùn)行<b class='flag-5'>OpenHarmony</b><b class='flag-5'>輕</b><b class='flag-5'>量</b><b class='flag-5'>系統(tǒng)</b>