本文来源电子发烧友社区,作者: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文章
2460浏览量
129996 -
HarmonyOS
+关注
关注
80文章
2157浏览量
36280 -
HiSpark
+关注
关注
1文章
156浏览量
7798
发布评论请先 登录
相关推荐
热点推荐
芯科科技低功耗Wi-Fi开发指南
Silicon Labs(芯科科技)整理并制作了低功耗Wi-Fi开发指南的网站资源,以帮助开发人员使用低功耗 Wi-Fi 6协议进行下一代物联网产品
技术资讯 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
•2445次阅读
基于 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 8:开启极高可靠性 (UHR) 连接的新纪元——1
、5GHz与6GHz。关于标准正式发布的年份,业界目前预估为2028年,但真正的标准制定完成日期仍需以IEEE 与Wi-Fi Alliance 工作小组的进度为准。
图2展示了IEEE正在进行
发表于 06-13 11:09
芯科科技推出新款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
【HarmonyOS HiSpark Wi-Fi IoT 套件试用连载】第2章 OpenHarmony开发环境搭建
评论