本文来源电子发烧友社区,作者: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文章
2379浏览量
128883 -
HarmonyOS
+关注
关注
80文章
2146浏览量
35556 -
HiSpark
+关注
关注
1文章
156浏览量
7683
发布评论请先 登录
相关推荐
热点推荐
浅谈Wi-Fi 6E与Wi-Fi 7的关键器件——BAW滤波器新技术
作者: Qorvo 亚太区无线连接事业部高级行销经理林健富 2020年1月,Wi-Fi联盟正式宣布开放6GHz频段(5925MHz-7125MHz),并将其命名为Wi-Fi 6E。2020年4月
发表于 09-19 18:29
•1314次阅读
基于 SSID 的 Wi-Fi 定位:与其他定位服务的性能比较
,我们将使用 nRF9160 DK、nRF7002 EK和 PPK2 执行并展示实际功耗和准确性测量,以比较 nRF Cloud 提供的不同定位服务的性能。
背景知识
Wi-Fi 定位服务
Wi-Fi
发表于 08-31 21:01
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
华为海思正式进入Wi-Fi FEM赛道?
大家都知道了,2018年11 月离开锐迪科(RDA),前往福建晋江创立三伍微,专注于Wi-Fi射频前端芯片,从路由器Wi-Fi FEM,到手机Wi-Fi FEM,再到IoT FEM全覆
发表于 12-11 17:42
摩尔斯微电子发布Wi-Fi HaLow评估套件,加速物联网开发
近日,全球领先的Wi-Fi HaLow解决方案提供商摩尔斯微电子正式推出一款开创性的评估套件——MM6108-EKH05。这款完全整合的开发平台,旨在推动各行业物联网解决方案的快速发展
从Wi-Fi 4到Wi-Fi 7:网速飙升40倍的无线革命
Wi-Fi 6具有更高效率,适合密集设备环境,支持更低的延迟和更高的节能表现。 Wi-Fi 7 Wi-Fi 7是2024年发布的新一代标准,提供超高数据速率,支持
村田开发适用于IoT设备且具有优异耐环境性的Wi-Fi HaLow™通信模块
Wi-Fi®标准“Wi-Fi HaLow™*1”的通信模块“Type 2HK”和“Type 2HL”(以下简称“本产品”)。本产品配备了使用ARM® Cortex-M3处理器的NEWR
发表于 12-06 14:41
•1231次阅读

【HarmonyOS HiSpark Wi-Fi IoT 套件试用连载】第2章 OpenHarmony开发环境搭建
评论