> 文档中心 > 如何在Windows/Linux上面优雅地编译OpenHarmony--编译环境搭建篇(一)

如何在Windows/Linux上面优雅地编译OpenHarmony--编译环境搭建篇(一)

如何在Windows/Linux上面优雅地编译OpenHarmony--编译环境搭建篇(一)

  • 前言
  • 准备阶段
  • Windows下配置
  • 编译环境配置
    • python工具包配置
    • 编译工具配置
      • 安装gn
      • 安装ninja
      • 安装gcc-riscv32
      • 配置环境变量

前言

本文共两篇,此为第一篇用于介绍OpenHarmonyOS的编译环境搭建,第二篇将会介绍源码下载与编译

本文内容仅适用于Windows10/11和Linux。作者在学习Openharmony开发时一直是用的小熊派官方的VHD通过加载进虚拟机再本地SSH进行编译再通过SFTP取回编译结果的方式进行开发学习,属实是绕了一大圈,于是想通过DevEco Device Tools,但Windows又不支持编译我这MCU,上Linux又懒得切系统,配置更是麻烦,所以最后有了通过WSL的方式在Windows使用VSC开发的想法。(环境配置同样适用于Linux)

准备阶段

  1. 一台装有Linux\Windows10的电脑。

Windows下配置

Linux用户可以直接跳转到编译环境配置部分

  1. 首先确保已经在控制面板->程序和功能->启用或关闭Windows功能里启用了适用于Linux的Windows子系统
  2. 进入Windows应用商店,找到你喜欢的Linux子系统安装即可,这里我选择了Ubuntu20.04 LTS Ubuntu子系统
  3. 打开后会进入一段时间的Installing,只要耐心等待即可,之后会要求你输入用户名和密码,按照规则输入就好,之后应该就可以进入shell界面了。
    Shell界面

编译环境配置

本文以小熊派BearPi-HM_Nano为例,在Ubuntu下演示鸿蒙开发环境的搭建,大家可以通过类比搭建其他MCU的编译环境,毕竟这是对MCU编程而不是对板子编程。
鸿蒙官方原版源码文档点此
小熊派官方源码及文档点此

python工具包配置

  1. 安装Python3.8及其以上。
    sudo apt install python3
  2. 安装Pip工具
    sudo apt install python3-setuptools python3-pip -y
  3. 安装python模块setuptools
    pip3 install setuptools
  4. 安装kconfig
    sudo pip3 install kconfiglib
  5. 安装pycryptodome
    sudo pip3 install pycryptodome
  6. 安装six
    sudo pip3 install six --upgrade --ignore-installed six
  7. 安装ecdsa
    sudo pip3 install ecdsa

需要注意的是大多数wsl或linux镜像都自带python2,python指令指向的是Python2.x版本,这里需要进行一个修改,防止后续执行编译脚本失败
先查看python指令是否指向了Python3.x
ls -l /usr/bin/python*
如何在Windows/Linux上面优雅地编译OpenHarmony--编译环境搭建篇(一)
可以看到我这里已经将python链接到了python3目录
如果没有,可以执行以下指令
sudo ln -s /usr/bin/python3 /usr/bin/python

编译工具配置

这里我们建议使用gitee下载源码,hpm包方式具有诸多不便且更新不及时,所以为了使用gitee下载并对源码进行编译,我们需要准备gn,ninja,gcc-riscv32编译工具链OpenHarmony官方源码里使用了llvm,放到以后的文章讲怎么去配置和使用官方源码,其实这篇教程看会了举一反三不难的。

安装gn

  1. 从华为云下载gn
    wget https://repo.huaweicloud.com/harmonyos/compiler/gn/1717/linux/gn-linux-x86-1717.tar.gz
  2. 创建gn目录
    mkdir ~/gn
  3. 解压
    tar -xvf gn-linux-x86-1717.tar.gz -C ~/gn

安装ninja

  1. 从华为云下载ninja
    wget https://repo.huaweicloud.com/harmonyos/compiler/ninja/1.9.0/linux/ninja.1.9.0.tar
  2. 解压ninja
    tar -xvf ninja.1.9.0.tar -C ~/

安装gcc-riscv32

  1. 百度云链接,提取码1234
  2. 解压
    tar -xvf gcc_riscv32-linux-7.3.0.tar.gz -C ~/

配置环境变量

  1. 打开.bashrc
    `vim ~/.bashrc
  2. 将以下内容写入文件最后一行
export PATH=~/gn:$PATHexport PATH=~/ninja:$PATHexport PATH=~/gcc_riscv32/bin:$PATH
  1. 退出保存,输入指令生效
    source ~/.bashrc

至此环境搭建完成