OpenHarmony开源社区
直播中

lingxin-yuhe

11年用户 341经验值
擅长:嵌入式技术,处理器/DSP,接口/总线/驱动
私信 关注
[经验]

【开鸿智谷NiobeU4开发板免费试用体验】开鸿智谷NiobeU4环境搭建及编译下载测试

前言: 没有搭建过标准系统的openharmony开发环境,弄了一周多编译还是有问题,总是从头再来一遍,总能够编译通过。这一篇就记录一下搭建标准系统过程及编译源码。

一. 下载Ubuntu20.04镜像用虚拟机安装操作系统

为了减少空间用Ubuntu20.04 server来搭建编译环境,首先去清华源下载Ubuntu20.04版本的server,如图所示。

1662963965804pokj9lhulk

下载完成后,我们用VMware安装一个虚拟机,这个安装过程需要注意一下,因为server版本的安装和desktop的安装有些不同。接下来是具体的安装步骤。

  • 创建新的虚拟机,如图所示,选择自定义安装,下一步。

1662963966902yfhrq72lja

  • 稍后安装操作系统,下一步。

166296396754512ji7qzpbe

  • 选择Linux,Ubuntu64位,下一步。

166296396797800gf8zfpdx

  • 选择安装路径,修改虚拟机的名称,点击下一步,如图所示。

16629639684807twyt9j4si

  • 配置处理器,根据自己电脑配置进行选择,如图所示。

166296396890152atli8luc

  • 设置虚拟机的内存,根据自己电脑的内存进行设置,决定了编译的速度,因电脑本身内存不大,就选了2G的内存,如图所示。

1662963969372cj5jduqm12

  • 设置网络连接方式,我就用桥接模式,每个模式的含义大家可以自行查阅,如图所示。

1662963969784jhb79aprf1

  • 选择默认I/O控制器类型,如图所示。

1662963970214z5ngmoqw14

  • 选择默认虚拟磁盘类型,如图所示。

16629639706704qo4hmrej4

  • 选择磁盘,默认即可,如图所示。

1662963971086i6nifzdbj6

  • 设置磁盘大小,因标准系统编译占用磁盘较大,根据自身磁盘大小选择了120G,将虚拟磁盘存储为单个文件,点击下一步。

16629639715287hdrfcc9qk

  • 指定磁盘文件存储位置,如图所示。

1662963972026zoso28a51d

  • 点击完成,进入安装过程,也可以点击自定义硬件,将不需要的硬件去掉,如图所示。

1662963972473kaqvaw9a0t

  • 编辑编辑虚拟机设置,选择镜像文件为刚刚下载的镜像文件,点击确定,如图所示。

1662963972946bcvbvqbhzc

  • 接下来,点击开启此虚拟机,进入安装过程。

16629639735857tl1q4dshu

  • 进入系统设置,选择English,默认,按Enter键,下一步如图所示。

1662963974037rre2gposkb

  • 接下来键盘配置,默认即可,点击Done。

1662963974401vzx71ywenq

  • 系统自动分配IP,点击Done。

1662963974781631nda294p

  • 不需要代理服务器地址,点击Done。

16629639751448mhzwo6gfw

  • 配置Ubuntu镜像地址为清华源,鼠标点进入,上下将光标定到白色字符行,即可修改字符了,点击Done。

1662963975502fzoklr3lyb

  • 接下来配置存储引导,选择使用整块磁盘,并且按照LVM,LVM是一个磁盘管理工具,下面是加密的意思,不选择,默认Done。

16629639758370yeasu72q2

  • 文件系统的摘要,直接Done即可,也可进行修改。

1662963976267sonwpdh94o

  • 然后提示磁盘数据会丢失,选择Continue,然后回车。

1662963976677cxyv7bmyr0

  • 创建用户,填写相应的信息,下一步。

1662963977076d67xuzrtnd

  • 安装SSH服务,选中Install OpenSSH server,按下空格进行勾选,然后选中Done,按回车。

1662963977492yf6lhtzy3k

  • 选中预装环境,按需选取,选中Done,回车。

16629639778633udg42wtxc

  • 开始安装系统,如图所示。

1662963978294w4xgk4yqv5

  • 等待安装成功,如图所示,Reboot Now。

1662963978762ob0bvljl87

  • Reboot后出现error,需要将启动磁盘改一下,才能启动起来。

16629639791442g44s7n82t

  • 安装net-tools,sudo apt install net-tools –y。查看网络IP地址,如图所示。

1662963979621nven4gbjxt

  • 使用ssh登录Ubuntu server,如图所示。

1662963980018e7c66n7j5l

  • 使用df –h查看磁盘分布,如图所示,分配的120G的磁盘,为什么只有这点。

16629639806030uwv3bcnkl

  • ubuntu20.04 server 安装时默认使用lvm进行磁盘管理,只使用磁盘空间的一半,如果要把另一半也用起来,需要如下处理:
  • 显示存在的卷组:sudo vgdisplay

1662963980986ih3d9k7bnz

  • 将剩余磁盘使用起来,如图操作。

1662963981369vxl1onav0l

  • 重新查看磁盘大小,如图所示。

1662963981757zlje73f9lm

接下来我们根据NiobeU4开发板系统搭建进行测试。

二、 NiobeU4系统搭建

根据NiobeU4搭建开发环境说明主要步骤。

  • 安装ccache工具
sudo apt install ccache
  • 安装git和 git-lfs工具及配置用户名和邮箱,如下图所示。

1662963982195h6nn9hv3rr

  • 设置Python软连接为Python3.8,如图所示,如果没有Python3.8,进行安装。

16629639827282c9ke5t7kt

  • 安装并升级Python包管理工具(pip3)。
sudo apt-get install python3-setuptools python3-pip -y
sudo pip3 install --upgrade pip

16629639831854zgtlqmfws

  • 安装Python3工具包。
pip3 install --trusted-host mirrors.aliyun.com -i http://mirrors.aliyun.com/pypi/simple jinja2 ohos-build==0.4.6 esptool

1662963983574cytf5h7o63

  • 将hb工具添加至环境变量
vi ~/.bashrc  #打开环境配置文件
export PATH=~/.local/bin:$PATH  #添加该语句至文件末尾,保存退出
source ~/.bashrc #使环境配置文件生效
  • 安装码云repo工具,我的没有权限,下载到了~/目录下,将其添加到环境变量中,如图所示。发现这个方法不行,后面repo init时还是要找/usr/local/bin/repo这个目录,因此我们直接用下面的命令:
curl https://gitee.com/oschina/repo/raw/fork_flow/repo-py3 -o ~/repo
chomd a+x ~/repo
sudo ln –s ~/repo /usr/local/bin/repo
pip3 install –i https://repo.huaweicloud.com/repository/pypi/simple requests

1662963984101ua6bcfttd0

  • 安装交叉编译工具链。

    新建一个目录,来存储下载的编译工具链压缩包:

mkdir -p ~/download && cd ~/download

下载交叉编译工具链压缩包:

wget https://dl.espressif.com/dl/xtensa-esp32-elf-gcc8_4_0-esp-2021r2-linux-amd64.tar.gz

将交叉编译工具解压并配置环境变量:

sudo tar axvf xtensa-esp32-elf-gcc8_4_0-esp-2021r2-linux-amd64.tar.gz -C /opt/
vi ~/.bashrc
export PATH=$PATH:/opt/xtensa-esp32-elf/bin //文件末尾添加
source ~/.bashrc

三、源码获取

  • 通过下面的命令进行源码获取。
mkdir niobeu4_src && cd niobeu4_src
repo init -u https://gitee.com/fangye945a/niobeu4_trial.git -m devboard_niobeu4.xml
repo sync -c
repo forall -c 'git lfs pull'
repo start master –all

1662963984732gq3gy5k3pc

四、 构建源码

  • 进入源码根目录,执行hb set命令并选择openvalley下的iotlink。
hb set

1662963985164osqoaoyjmv

  • 执行hb build –f脚本构建产生固件。
hb build –f
  • 如图所示,编译成功,并查看生产的固件。

1662963985509riiqhhpp03

五、镜像烧录

  • 通过MobaXterm软件ssh登录服务器,将生成的文件Download到Windows系统下,如图所示。

1662963986119qjvavik0kt

1662963987602v279utz3hj

  • 下载windows下esp32固件升级软件flash_download_tool_3.9.2_0.zip,解压根据文档进行固件升级。
  • 插入usb到UART TO USB口,发现系统没有驱动,看芯片为沁恒微电子的CH9102,去到沁恒微电子官网搜素,下载驱动如下图所示,下载完驱动,进行预安装,再插入usb口就可以了。

1662963988044wtf53zzx96

  • 打开window下刷机软件flash_download_tool_3.9.2,选择esp32,如图所示。

166296398875357vndqwgd4

  • 然后选择需要烧录的镜像文件,一般只刷image文件就可以,如图所示,刷机成功。

16629639893486jt51ejhjr

  • 打开MobaXterm建立serial session,进入后显示不对齐,在终端右击,选择Change terminal settings,如图所示。

166296398993575gnvm3owf

  • 修改串口接收属性,如图所示。

166296399030292geqlhc53

  • 应用后,重启设备,打印如下图所示。

166296399082066z7a0zvzx

接下来就可以开发我们自己的应用了。

回帖(1)

爱与友人

2022-9-16 16:58:25
文章非常棒,点个赞
举报

更多回帖

发帖
×
20
完善资料,
赚取积分