一、鸿蒙的相关网站

    • 鸿蒙官网: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
      
    2. 安装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$
    

    注:记录整理,参考于朱有鹏老师的鸿蒙课程