本文來源電子發(fā)燒友社區(qū),作者:ouxiaolong, 帖子地址:https://bbs.elecfans.com/jishu_2283575_1_1.html
開發(fā)環(huán)境:
開發(fā)環(huán)境:
開發(fā)系統(tǒng):Ubuntu 20.04
開發(fā)板:Pegasus物聯(lián)網(wǎng)開發(fā)板
MCU:Hi3861
OpenHarmony版本:3.0.1-LTS
本文將介紹如何搭建OpenHarmony開發(fā)環(huán)境,OpenHarmony主要在Linux平臺上開發(fā),因此需要使用Linux環(huán)境開發(fā),要想使用Linux開發(fā)環(huán)境,可以選擇安裝Linux系統(tǒng),也可在Windows上安裝虛擬機,筆者就是使用的該方式,這種方式的好處是可以隨時拷貝,非常方便。
筆者的虛擬機使用的是VMwareWorkstation,Linux系統(tǒng)使用的是Ubuntu 20.04,關(guān)于VMwareWorkstation的安裝和Ubuntu的安裝筆者這里就不在贅述了,筆者默認(rèn)大家已經(jīng)裝好VMwareWorkstation和Ubuntu。
2.1安裝依賴包
更新主機的源列表:
$ sudo apt-get update
安裝依賴包:
$ sudo apt-get install build-essential gcc g++ make zlib*libffi-dev e2fsprogs pkg-config flex bison perl bc openssl libssl-devlibelf-dev libc6-dev-amd64 binutils binutils-dev libdwaRF-dev u-boot-tools mtd-utilscpio device-tree-compiler git git-lfs curl python3-pip tree
值得注意的是,如果Ubuntu Shell環(huán)境如果不是bash,則需要修改為bash。檢測命令如下:
$ ls -l /bin/sh

打開終端工具,執(zhí)行如下命令:
$ sudo dpkg-reconfigure dash
然后選擇No,即可將Ubuntu shell由dash修改為bash。
2.2獲取源碼
OpenHarmony的最新版本是3.1(2022-03-30),關(guān)于OpenHarmony的所有版本的更新信息請參看Release Notes。
Release Notes:
https://gitee.com/openharmony/docs/blob/master/zh-cn/release-notes/Readme.md

首先檢查下Python版本。

可以看到,Ubuntu 20.04默認(rèn)的Python版本是3.8.10。因此,無需升級Python。
值得注意的是,如果無法使用python命令,可做一個軟鏈接,命令如下:
$sudo ln -s /usr/bin/python3.8 /usr/bin/python
2.配置Git
配置Git用戶信息:
$git config --global user.name "yourname"
$git config --global user.email"your-email-address"
如果想使用ssh下載源碼,還需要配置ssh。
關(guān)于如何配置gitee的SSH公鑰,請參看gitee的幫助中心。
SSH公鑰設(shè)置 :https://gitee.com/help/articles/4191
3.安裝repo
新建目錄:
$ mkdir OpenHarmony
$ cd OpenHarmony
接下來安裝碼云repo工具,命令如下:
$sudo curlhttps://gitee.com/oschina/repo/raw/fork_flow/repo-py3-o /usr/local/bin/repo#也可下載至其他目錄,并將其配置到環(huán)境變量中

$sudo chmod a+x /usr/local/bin/repo
$pip3install -ihttps://repo.huaweicloud.com/repository/pypi/simplerequests

4.獲取OpenHarmony源碼
接下來獲取源碼OpenHarmony,OpenHarmony源碼下載有兩種方式:
方式一:通過repo + ssh下載(需注冊公鑰)。
$repo init -ugit@gitee.com:openharmony/manifest.git -bmaster --no-repo-verify
$repo sync –c #代碼同步,時間還有點久,請耐心等待
$repo forall -c 'git lfs pull'
方式二:通過repo + https下載。
$repo init -uhttps://gitee.com/openharmony/manifest.git-bmaster --no-repo-verify
$repo sync -c
$repo forall -c 'git lfs pull'

或者:
$repo init -uhttps://gitee.com/openharmony/manifest.git-bOpenHarmony-v3.0-LTS --no-repo-verify
筆者使用的是https下載。
源碼下載完成后,其目錄如下:
$tree -L 1

當(dāng)然啦,如果覺得使用Git麻煩,那么就到華為的repo網(wǎng)站下載。

當(dāng)然也可下載最新的版本(V3.1)。
官方手冊:
https://gitee.com/openharmony/docs/blob/master/zh-cn/device-dev/quick-start/quickstart-ide-lite-sourcecode-acquire.md
2.3安裝hb工具
hb是HarmonyOS2.0里新增加的編譯構(gòu)建命令行工具。需要Python 3.7.4及以上版本的支持,建議安裝3.8.x。Ubuntu 20.04默認(rèn)安裝的是Python 3.8.10。
在源碼根目錄下執(zhí)行:
$ cd ~/OpenHarmony
$python3 -m pip install --user build/lite

然后設(shè)置環(huán)境變量
$ vim ~/.bashrc
將以下命令拷貝到.bashrc文件的最后一行,保存并退出。
exportPATH=~/.local/bin:$PATH
執(zhí)行如下命令更新環(huán)境變量。
$ source ~/.bashrc
執(zhí)行hb -h有相關(guān)幫助信息,有打印信息即表示安裝成功:

卸載方法:
$ python3 -m pip uninstall ohos-build
官方手冊:
https://gitee.com/openharmony/build_lite
2.4安裝Python工具
1.安裝Scons
運行如下命令,安裝SCons安裝包。
$ python3 -m pip install scons
運行如下命令,查看是否安裝成功。如果安裝成功,查詢結(jié)果下圖所示。
$ scons -v

版本要求3.0.4以上。
2.安裝python工具模塊
運行如下命令,安裝python模塊setuptools。
$ pip3 install setuptools
3.安裝Kconfiglib
安裝GUI menuconfig工具(Kconfiglib),建議安裝Kconfiglib13.2.0+版本,命令如下:
$ pip3 installkconfiglib
4.安裝Python簽名依賴的組件包
安裝升級文件簽名依賴的Python組件包,包括:pycryptodome、six、ecdsa。安裝ecdsa依賴six,請先安裝six,再安裝ecdsa。
命令如下:
$ pip3 install pycryptodome
$ pip3 install six --upgrade --ignore-instalLEDsix
$ pip3 install ecdsa
2.5安裝交叉編譯工具鏈
下載以下交叉編譯工具鏈:
將下載的壓縮包拷貝到Ubuntu的/opt目錄。
然后解壓gcc_riscv32-linux-7.3.0.tar.gz:
$ sudo tar -xvf gcc_riscv32-linux-7.3.0.tar.gz
接著修改環(huán)境變量:
$vim ~/.bashrc
將以下命令拷貝到.bashrc文件的最后一行,保存并退出。
export PATH=/opt/gcc_riscv32/bin:$PATH
生效環(huán)境變量。
$ source ~/.bashrc
檢查編譯器信息,命令如下:
$ riscv32-unknown-elf-gcc -v

表明編譯器安裝成功。
小貼士:Ubuntu和Windows互傳文件-創(chuàng)建鏈接
1)虛擬機->設(shè)置->共享文件夾

2)選擇下一步,然后選擇共享文件夾路徑

再下一步->完成就可。
3)進(jìn)行軟鏈接
輸入命令:
$ln -s /mnt/hgfs/share
好了,現(xiàn)在Ubuntu和Windows就能互傳文件了。
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。
舉報投訴
-
wi-fi
+關(guān)注
關(guān)注
15文章
2424瀏覽量
129515 -
HarmonyOS
+關(guān)注
關(guān)注
80文章
2153瀏覽量
36039 -
HiSpark
+關(guān)注
關(guān)注
1文章
156瀏覽量
7755
發(fā)布評論請先 登錄
相關(guān)推薦
熱點推薦
技術(shù)資訊 I Wi-Fi 模塊設(shè)計
本文要點Wi-Fi模塊設(shè)計旨在打造一套緊湊且高效的硬件和軟件解決方案,使設(shè)備能夠通過Wi-Fi網(wǎng)絡(luò)實現(xiàn)通信。Wi-Fi模塊設(shè)計是一個復(fù)雜的過程,要求研發(fā)人員兼具硬件與軟件工程方面的專業(yè)知識
Wi-Fi:無線連接的全球通用語
現(xiàn)代生活中不可或缺的無線連接方式。二、Wi-Fi的核心特點1. 高速率,寬帶寬支持從幾十Mbps到數(shù)Gbps的傳輸速率,滿足高清視頻、在線游戲等高帶寬應(yīng)用需求。2. 廣泛兼容,生態(tài)成熟幾乎所有智能終端均內(nèi)置
發(fā)表于 01-07 09:49
探索CY8CPROTO - 062S2 - 43439 PSoC? 62S2 Wi-Fi藍(lán)牙原型套件
探索CY8CPROTO - 062S2 - 43439 PSoC? 62S2 Wi-Fi藍(lán)牙原型套件 引言 在物聯(lián)網(wǎng)(IoT)和可穿戴設(shè)備蓬
Nordic發(fā)布nRF7002 EBII 開發(fā)板, 支持Wi-Fi 6, 解鎖nRF54L新玩法
了 Wi-Fi 6 功能,幫助開發(fā)人員創(chuàng)建高性能、高能效的Wi-Fi 6 物聯(lián)網(wǎng)解決方案。
基于 Nordic 的 nRF7002 Wi-Fi 協(xié)同 IC,nRF7002 EBII幫助
發(fā)表于 12-10 11:58
Wi-Fi模塊選型指南 | 低功耗藍(lán)牙/Wi-Fi 6模塊推薦 | 物聯(lián)網(wǎng)設(shè)備集成攻略
:選擇用模塊的理由: 是為了方便電路集成設(shè)計,特別是硬件兼容集成設(shè)計,這樣只要產(chǎn)品前期做好了綜合設(shè)計,后續(xù)做產(chǎn)品設(shè)計以及應(yīng)用端的靈活選擇,提供了很大的便利,省得重復(fù)設(shè)計硬件,縮短開發(fā)周,加快將產(chǎn)品推向市場的時間; 二:Wi-Fi模塊選型注意點
淺談Wi-Fi 6E與Wi-Fi 7的關(guān)鍵器件——BAW濾波器新技術(shù)
作者: Qorvo 亞太區(qū)無線連接事業(yè)部高級行銷經(jīng)理林健富 ? 2020年1月,Wi-Fi聯(lián)盟正式宣布開放6GHz頻段(5925MHz-7125MHz),并將其命名為Wi-Fi 6E。2020年4月
發(fā)表于 09-19 18:29
?2110次閱讀
Texas Instruments CC335x SimpleLink?雙頻Wi-Fi? 6配套IC數(shù)據(jù)手冊
) 和Wi-Fi 5 (802.11ac)。這些CC335x是Texas Instruments的第10代連接組合芯片。因此,CC335x基于成熟的技術(shù)設(shè)計而成。這些器件非常適合配備運行TCP/IP的Linux或
如何選擇合適的芯科科技Wi-Fi開發(fā)板
您正在尋找適用于超低功耗物聯(lián)網(wǎng)應(yīng)用項目的Wi-Fi 開發(fā)板嗎?本文將介紹Silicon Labs(芯科科技)推出的所有SiWx917 Wi-Fi 6和低功耗藍(lán)牙5.4解決方案的Wi-Fi
Wi-Fi 8:開啟極高可靠性 (UHR) 連接的新紀(jì)元——2
不連續(xù)的頻譜 (non-continuous spectrum) 環(huán)境下,也能夠執(zhí)行前導(dǎo)碼打孔操作。
圖4 展示了Wi-Fi 7中MRU的顯著效果,其能讓RU將信號干擾所導(dǎo)致的可用頻道損耗從75%降低
發(fā)表于 06-13 11:15
芯科科技推出新款Wi-Fi 6開發(fā)套件SiWG917Y
問問任何一位Wi-Fi開發(fā)者,他們工作中最困難的部分是什么?你很可能會聽到這樣的回答:“設(shè)計天線以及應(yīng)對全球射頻(RF)法規(guī)認(rèn)證。” 因應(yīng)這一挑戰(zhàn),Silicon Labs (芯科
[CYW4373] BT device_id正常,Wi-Fi device_id失敗的原因?
ID。
情況 B:如果在內(nèi)核加載階段而不是引導(dǎo)加載程序階段檢測到 CYW4373,則正確識別 USB 集線器 (04b4:bd30),并且成功檢測到 BT 和 Wi-Fi 設(shè)備 ID。
2)內(nèi)核日志
發(fā)表于 06-05 06:07
基于 Wi-Fi 的定位服務(wù)
以下捕獲使用 location_wifi_get 函數(shù)請求 Wi-Fi 定位服務(wù)。該事件的總功耗為 125.85mC,日志顯示精確度為 30.0m。
Got location:
method
發(fā)表于 04-17 15:16
nRF Cloud Wi-Fi 定位服務(wù)
、Predictive-GPS、Single-Cell、Multi-Cell 和 Wi-Fi 定位。通過利用 nRF Cloud 的優(yōu)化定位算法,基于 Nordic SoC 和 模組的產(chǎn)品可在定位用例
發(fā)表于 04-17 15:07
Wi-Fi 定位服務(wù)
Wi-Fi 是一種著名的無線網(wǎng)絡(luò)技術(shù),用于設(shè)備的局域網(wǎng)和互聯(lián)網(wǎng)接入。Wi-Fi 通過 Wi-Fi 網(wǎng)絡(luò)為家庭、辦公室和學(xué)校等環(huán)境提供便捷的無線互聯(lián)網(wǎng)接入服務(wù)。
發(fā)表于 04-17 15:01
【HarmonyOS HiSpark Wi-Fi IoT 套件試用連載】第2章 OpenHarmony開發(fā)環(huán)境搭建
評論