前言
周二就收到了Wi-Fi loT Hi3861的试用开发板,最近忙的一直没有时间开始研究,终于今天周六睡了一个大懒觉起来开始准备开发环境。
因为harmonyos目前只能使用ubuntu进行编译,刷写固件需要windows环境,而我习惯在mac下开发。这对入门者来说是第一个挑战,想要开始开发首先需要集齐三大操作系统?。。
还好在开发者群里有【乔大妈】大佬提供了mac下开发,编译,烧录的全套方案,这里就把整套环境的搭建流程记录下来,方便后来者快手上手。
搭建流程
整体来说,整套开发环境分为开发,编译,烧录三个阶段。所以这里就分别讲解这三个阶段下的环境搭建。
准备工作
首先需要确定你的工作目录(workspace),就是整个开发流程内所有文件的存放目录,同时也是使用docker时设置docker挂载的目录。
这里我以 ~/workspace/harmonyos 为例。
编码环境
代码编辑器推荐使用vscode
下载 Hi3861 源码 https://repo.huaweicloud.com/... 到 ~/workspace/harmonyos 目录下解压。
mkdir -p ~/workspace/harmonyos
cd ~/workspace/harmonyos
wget https://repo.huaweicloud.com/harmonyos/os/1.0/code-1.0.tar.gz
tar xvzf code-1.0.tar.gz
至此代码已经全部下载完毕并解压到~/workspace/harmonyos目录下了,直接用vscode打开项目即可。
编译环境
编译环境主要使用docker内的ubuntu,使用docker目录映射共享工作目录实现。
安装docker的流程这里不再赘述。
使用docker拉取fnndsc/ubuntu-python3 镜像文件。
docker pull fnndsc/ubuntu-python3
漫长的等待后,运行镜像,这里主要需要把docker内的/root目录和mac上工作目录进行映射。
docker run -it --name hm_build -v ~"/workspace/harmonyos":"/root" -d fnndsc/ubuntu-python3:latest
成功执行以后docker镜像已经在后台运行了,此时可以进入docker容器进行后续操作
docker exec -it hm_build /bin/bash -l
经过测试对比开发文档(链接)后,发现这个镜像的python模块已经集成了 setuptools和kconfiglib,所以需要依次安装pycryptodome,ecdsa,six
pip3 install pycryptodome
pip3 install six --upgrade --ignore-installed six
pip3 install ecdsa
然后安装scons。
apt-get install scons -y
安装gn
cd /tmp
apt-get install wget -y
get https://repo.huaweicloud.com/harmonyos/compiler/gn/1523/linux/gn.1523.tar
tar -xvf gn.1523.tar -C ~/
export PATH=~/gn:$PATH
安装ninja
wget https://repo.huaweicloud.com/harmonyos/compiler/ninja/1.9.0/linux/ninja.1.9.0.tar
tar -xvf ninja.1.9.0.tar -C ~/
export PATH=~/ninja:$PATH
安装gcc_riscv32
wget https://repo.huaweicloud.com/harmonyos/compiler/gcc_riscv32/7.3.0/linux/gcc_riscv32-linux-7.3.0.tar.gz
tar -xvf gcc_riscv32-linux-7.3.0.tar.gz -C ~/
export PATH=~/gcc_riscv32/bin:$PATH
终于编译环境算是准备就绪了,不容易呀~~ 接下来是见证奇迹的时刻开始编译。
cd ~
python build.py wifiiot
祈祷吧,如果看到 BUILD SUCCESS ,恭喜你编译成功。
如果编译失败,可以尝试在docker内重新下载源码进行编译,编译成功的iot文件可以通过/root/传输到mac的工作目录内。
烧录环境
烧录主要是使用 crossover运行海思的烧录工具Hiburn进行烧录。
https://device.harmonyos.com/...
作者:LibiChai
想了解更多内容,请访问:
51CTO和华为官方战略合作共建的鸿蒙技术社区
https://harmonyos.51cto.com?jssq