一、鸿蒙的相关网站

  • 鸿蒙官网:https://www.harmonyos.com/cn/home/
  • 源码托管Gitee:openharmony.gitee.com
  • 开发套件合作社区:http://www.hihope.org/
  • 官方合作社区(51CTO、电子发烧友):https://harmonyos.51cto.com/ https://bbs.elecfans.com/harmonyos

在gitee的源码中,在doc的目录下有很多开发者文档。可供开发者去学习参考,比如。

  • HI3861的开发者文档:https://gitee.com/openharmony/docs/blob/master/quick-start/Hi3861%E5%BC%80%E5%8F%91%E6%9D%BF.md
  • 鸿蒙源码获取方式:https://gitee.com/openharmony/docs/blob/master/get-code/%E6%BA%90%E7%A0%81%E8%8E%B7%E5%8F%96.md

二、源码的获取

鸿蒙在文档中提供四种方式的下载。为了和gitee,同步使用常用的repo和git的方式下载。
1.在Ubuntu中安装git,生成私钥和密钥,添加到自己gitee账户。
2.安装码云repo工具

按照官方文档安装文档会出现一点问题
curl https://gitee.com/oschina/repo/raw/fork_flow/repo-py3 > /usr/local/bin/repo
chmod a+x /usr/local/bin/repo
即是加了sudo还是报错:
bash: /usr/local/bin/repo: Permission denied
解决办法:
sudo apt-get install curl sudo curl https://gitee.com/oschina/repo/raw/fork_flow/repo-py3 > tmp
sudo cp tmp /usr/local/bin/repo

//(增加可执行权限)
sudo chmod a+x /usr/local/bin/repo

在使用到pip的时候,需要安装python。鸿蒙要求至少3.7以上版本。20.04的版本ubuntu自带3.8版本的。
环境搭建文档有python的安装说明:
https://gitee.com/openharmony/docs/blob/master/quick-start/搭建环境.md

安装pip3(python3版本是pip3,pip是python2的)

sudo apt-get install python3-setuptools python3-pip -y`
pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple requests

下载代码(因为找不到python出错)

david@ubuntu:~/samba_share/reposrc$ repo init -u https://gitee.com/openharmony/manifest.git -b master --no-repo-verify
/usr/bin/env: ‘python’: No such file or directory

给python建立python3的一个符号链接来解决:

sudo ln -s python3 /usr/bin/python
repo init -u https://gitee.com/openharmony/manifest.git -b master --no-repo-verify

同步代码 (将manifest的全部代码下载)

repo sync -c

三、鸿蒙开发环境说明

在linux下:

  • 鸿蒙主体在linux,首选ubuntu。
  • Windows+虚拟机ubuntu方式
  • 开发环境依赖于很多第三方软件
  • 外部交叉编译工具:目前riscv用gcc,arm用了llvm
  • 工程管理:gn和Makefile
  • 配置编译:python

windows下:

  • 南向开发IDE:Deveco embeded studio,基于vscode的插件
  • IDE在windows下,但代码在linux下,通过samba等网络映射方式来对接
  • Windows下便于源码阅读,编辑,图形化编译、调试、烧录等。

四、HI3861环境搭建

官方文档:
https://gitee.com/openharmony/docs/blob/master/quick-start/搭建环境.md

1.将Linux shell改为bash

  • 先删除sh,再创建软链接。
sudo rm -rf /bin/sh
sudo ln -s /bin/bash /bin/sh

2.安装python

  • 之前安装好了。

3.安装python模块setuptools。

pip3 install setuptools

4.安装GUI menuconfig工具(Kconfiglib

sudo pip3 install kconfiglib

5.安装pycryptodome、six、ecdsa、Scons

sudo pip3 install pycryptodome
sudo pip3 install six --upgrade --ignore-installed six
sudo pip3 install ecdsa
sudo apt-get install scons -y

安装编译工具环境

  1. 安装gn。
    下载地址:https://repo.huaweicloud.com/harmonyos/compiler/gn/1523/linux/gn.1523.tar
    放到samba服务器中,即ubuntu系统中。
1.解压
tar -xvf gn.1523.tar
2.打开环境变量配置文件
sudo vim ~/.bashrc
3.将解压目录中对应的程序目录,加入环境变量文件最后
export PATH=/home/david/samba_share/env_setup/gn:$PATH
4.生效环境变量。
source ~/.bashrc
  1. 安装ninja
    下载地址:https://repo.huaweicloud.com/harmonyos/compiler/ninja/1.9.0/linux/ninja.1.9.0.tar
    放到samba服务器中,即ubuntu系统中。
1.解压
tar -xvf ninja.1.9.0.tar
2.打开环境变量配置文件
sudo vim ~/.bashrc
3.将解压目录中对应的程序目录,加入环境变量文件最后
export PATH=/home/david/samba_share/env_setup/ninja:$PATH
4.生效环境变量。
source ~/.bashrc
  1. 安装gcc_riscv32
    下载地址:https://repo.huaweicloud.com/harmonyos/compiler/gcc_riscv32/7.3.0/linux/gcc_riscv32-linux-7.3.0.tar.gz
    放到samba服务器中,即ubuntu系统中。
1.解压
tar -xvf gcc_riscv32-linux-7.3.0.tar.gz
2.打开环境变量配置文件
sudo vim ~/.bashrc
3.将解压目录中对应的程序目录,加入环境变量文件最后
export PATH=/home/david/samba_share/env_setup/gcc_riscv32/bin:$PATH  
4.生效环境变量。
source ~/.bashrc

尝试编译,验证环境

david@ubuntu:~/samba_share/reposrc$ python build.py wifiiot

五、HI3516DV环境搭建

官方文档:
https://gitee.com/openharmony/docs/blob/master/quick-start/%E6%90%AD%E5%BB%BA%E7%8E%AF%E5%A2%83-0.md 在HI3861环境中已经搭建了很大一部分。

  1. 安装文件打包工具
    安装dosfstools、mtools、mtd-utils
sudo apt-get install dosfstools
sudo apt-get install mtools
sudo apt-get install mtd-utils
  1. 安装LLVM编译工具链
    下载地址:https://repo.huaweicloud.com/harmonyos/compiler/clang/9.0.0-34042/linux/llvm-linux-9.0.0-34042.tar
1.解压
tar -xvf llvm-linux-9.0.0-34042.tar
2.打开环境变量配置文件
sudo vim ~/.bashrc
3.将解压目录中对应的程序目录,加入环境变量文件最后
export PATH=/home/david/samba_share/env_setup/llvm/bin:$PATH
4.生效环境变量。
source ~/.bashrc
  1. 安装hc-gen
    下载地址:https://repo.huaweicloud.com/harmonyos/compiler/clang/9.0.0-34042/linux/llvm-linux-9.0.0-34042.tar
1.解压
tar -xvf hc-gen-0.65-linux.tar 
2.打开环境变量配置文件
sudo vim ~/.bashrc
3.将解压目录中对应的程序目录,加入环境变量文件最后
export PATH=/home/david/samba_share/env_setup/hc-gen:$PATH
4.生效环境变量。
source ~/.bashrc

4.测试

python build.py ipcamera_hi3516dv300

....
[1166/1169] STAMP obj/foundation/graphic/lite/frameworks/ui/liteui.stamp
[1167/1169] STAMP obj/build/lite/ohos.stamp
[1168/1169] ACTION //build/lite:gen_rootfs(//build/lite/toolchain:linux_x86_64_clang)
[1169/1169] STAMP obj/build/lite/gen_rootfs.stamp
ohos ipcamera_hi3516dv300 build success!
david@ubuntu:~/samba_share/reposrc$