本文來源電子發燒友社區,作者:ouxiaolong, 帖子地址:https://bbs.elecfans.com/jishu_2283575_1_1.html
開發環境:
開發環境:
開發系統:Ubuntu 20.04
MCU:Hi3861
OpenHarmony版本:3.0.1-LTS
本文將介紹如何搭建OpenHarmony開發環境,OpenHarmony主要在Linux平臺上開發,因此需要使用Linux環境開發,要想使用Linux開發環境,可以選擇安裝Linux系統,也可在Windows上安裝虛擬機,筆者就是使用的該方式,這種方式的好處是可以隨時拷貝,非常方便。
筆者的虛擬機使用的是VMwareWorkstation,Linux系統使用的是Ubuntu 20.04,關于VMwareWorkstation的安裝和Ubuntu的安裝筆者這里就不在贅述了,筆者默認大家已經裝好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環境如果不是bash,則需要修改為bash。檢測命令如下:
$ ls -l /bin/sh

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

首先檢查下Python版本。

可以看到,Ubuntu 20.04默認的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。
關于如何配置gitee的SSH公鑰,請參看gitee的幫助中心。
SSH公鑰設置 :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#也可下載至其他目錄,并將其配置到環境變量中

$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

當然啦,如果覺得使用Git麻煩,那么就到華為的repo網站下載。

當然也可下載最新的版本(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里新增加的編譯構建命令行工具。需要Python 3.7.4及以上版本的支持,建議安裝3.8.x。Ubuntu 20.04默認安裝的是Python 3.8.10。
在源碼根目錄下執行:
$ cd ~/OpenHarmony
$python3 -m pip install --user build/lite

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

卸載方法:
$ python3 -m pip uninstall ohos-build
官方手冊:
https://gitee.com/openharmony/build_lite
2.4安裝Python工具
1.安裝Scons
運行如下命令,安裝SCons安裝包。
$ python3 -m pip install scons
運行如下命令,查看是否安裝成功。如果安裝成功,查詢結果下圖所示。
$ 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
接著修改環境變量:
$vim ~/.bashrc
將以下命令拷貝到.bashrc文件的最后一行,保存并退出。
export PATH=/opt/gcc_riscv32/bin:$PATH
生效環境變量。
$ source ~/.bashrc
檢查編譯器信息,命令如下:
$ riscv32-unknown-elf-gcc -v

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

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

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