前言: 没有搭建过标准系统的openharmony开发环境,弄了一周多编译还是有问题,总是从头再来一遍,总能够编译通过。这一篇就记录一下搭建标准系统过程及编译源码。
一. 下载Ubuntu20.04镜像用虚拟机安装操作系统
为了减少空间用Ubuntu20.04 server来搭建编译环境,首先去清华源下载Ubuntu20.04版本的server,如图所示。
下载完成后,我们用VMware安装一个虚拟机,这个安装过程需要注意一下,因为server版本的安装和desktop的安装有些不同。接下来是具体的安装步骤。
- 创建新的虚拟机,如图所示,选择自定义安装,下一步。
- 选择安装路径,修改虚拟机的名称,点击下一步,如图所示。
- 设置虚拟机的内存,根据自己电脑的内存进行设置,决定了编译的速度,因电脑本身内存不大,就选了2G的内存,如图所示。
- 设置网络连接方式,我就用桥接模式,每个模式的含义大家可以自行查阅,如图所示。
- 设置磁盘大小,因标准系统编译占用磁盘较大,根据自身磁盘大小选择了120G,将虚拟磁盘存储为单个文件,点击下一步。
- 点击完成,进入安装过程,也可以点击自定义硬件,将不需要的硬件去掉,如图所示。
- 编辑编辑虚拟机设置,选择镜像文件为刚刚下载的镜像文件,点击确定,如图所示。
- 进入系统设置,选择English,默认,按Enter键,下一步如图所示。
- 配置Ubuntu镜像地址为清华源,鼠标点进入,上下将光标定到白色字符行,即可修改字符了,点击Done。
- 接下来配置存储引导,选择使用整块磁盘,并且按照LVM,LVM是一个磁盘管理工具,下面是加密的意思,不选择,默认Done。
- 然后提示磁盘数据会丢失,选择Continue,然后回车。
- 安装SSH服务,选中Install OpenSSH server,按下空格进行勾选,然后选中Done,按回车。
- Reboot后出现error,需要将启动磁盘改一下,才能启动起来。
- 安装
net-tools,sudo apt install net-tools –y 。查看网络IP地址,如图所示。
- 使用ssh登录Ubuntu server,如图所示。
- 使用df –h查看磁盘分布,如图所示,分配的120G的磁盘,为什么只有这点。
- ubuntu20.04 server 安装时默认使用lvm进行磁盘管理,只使用磁盘空间的一半,如果要把另一半也用起来,需要如下处理:
- 显示存在的卷组:
sudo vgdisplay
接下来我们根据NiobeU4开发板系统搭建进行测试。
二、 NiobeU4系统搭建
根据NiobeU4搭建开发环境说明主要步骤。
sudo apt install ccache
- 安装git和 git-lfs工具及配置用户名和邮箱,如下图所示。
- 设置Python软连接为Python3.8,如图所示,如果没有Python3.8,进行安装。
sudo apt-get install python3-setuptools python3-pip -y
sudo pip3 install --upgrade pip
pip3 install --trusted-host mirrors.aliyun.com -i http://mirrors.aliyun.com/pypi/simple jinja2 ohos-build==0.4.6 esptool
vi ~/.bashrc
export PATH=~/.local/bin:$PATH
source ~/.bashrc
- 安装码云repo工具,我的没有权限,下载到了~/目录下,将其添加到环境变量中,如图所示。发现这个方法不行,后面repo init时还是要找/usr/local/bin/repo这个目录,因此我们直接用下面的命令:
curl https:
chomd a+x ~/repo
sudo ln –s ~/repo /usr/local/bin/repo
pip3 install –i https:
-
安装交叉编译工具链。
新建一个目录,来存储下载的编译工具链压缩包:
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
四、 构建源码
- 进入源码根目录,执行hb set命令并选择openvalley下的iotlink。
hb set
hb build –f
五、镜像烧录
- 通过MobaXterm软件ssh登录服务器,将生成的文件Download到Windows系统下,如图所示。
- 下载windows下esp32固件升级软件flash_download_tool_3.9.2_0.zip,解压根据文档进行固件升级。
- 插入usb到UART TO USB口,发现系统没有驱动,看芯片为沁恒微电子的CH9102,去到沁恒微电子官网搜素,下载驱动如下图所示,下载完驱动,进行预安装,再插入usb口就可以了。
- 打开window下刷机软件flash_download_tool_3.9.2,选择esp32,如图所示。
- 然后选择需要烧录的镜像文件,一般只刷image文件就可以,如图所示,刷机成功。
- 打开MobaXterm建立serial session,进入后显示不对齐,在终端右击,选择Change terminal settings,如图所示。
接下来就可以开发我们自己的应用了。
|