Ubuntu20.04上编译鸿蒙OS源码

举报
yd_221104950 发表于 2020/12/02 23:11:13 2020/12/02
【摘要】 我是Ubuntu平台上的开发者。我想在我的Ubuntu系统上编译鸿蒙OS。下面是编译的环境: 工具用途下载Python3.7+执行编译脚本工具bash执行命令行工具llvm编译工具链站点1 站点2gn产生ninja编译脚本站点1 站点2ninja执行ninja编译脚本站点1 站点2hc-gen驱动配置编译工具站点1 站点2 安装编译环境 1.安装Python3.7+...

我是Ubuntu平台上的开发者。我想在我的Ubuntu系统上编译鸿蒙OS。下面是编译的环境:

工具 用途 下载
Python3.7+ 执行编译脚本工具
bash 执行命令行工具
llvm 编译工具链 站点1 站点2
gn 产生ninja编译脚本 站点1 站点2
ninja 执行ninja编译脚本 站点1 站点2
hc-gen 驱动配置编译工具 站点1 站点2

安装编译环境

1.安装Python3.7+

1.1.查看Python版本号

Ubuntu 20.04默认是Python 3.7.6。

$ python3 --version
Python 3.7.6

  
 
  • 1
  • 2

1.2.安装pip3

$ sudo apt install python3-pip

  
 
  • 1

1.3.安装GUI menuconfig工具

$ sudo pip3 install kconfiglib

  
 
  • 1

1.4.设置python3软连接

$ sudo ln -s /usr/bin/python3  /usr/bin/python

  
 
  • 1

2.安装文件打包工具

  • 运行mkfs.vfat,如果未找到该命令,请运行sudo apt-get install dosfstools
  • 运行mcopy,如果未找到该命令,请运行sudo apt-get install mtools
  • 安装 zip:sudo apt install zip

3.安装llvm

解压llvm安装包至~/HarmonyOSDev路径下:

$ tar -xvf llvm-linux-9.0.0-34042.tar -C ~/HarmonyOSDev

  
 
  • 1

设置环境变量:

$ vim ~/.bashrc

  
 
  • 1

新增:

export PATH=~/HarmonyOSDev/llvm/bin:$PATH

  
 
  • 1

使环境变量生效:

$ source  ~/.bashrc

  
 
  • 1

4.安装gn

解压gn安装包至~/HarmonyOSDev路径下:

$ tar -xvf gn.1523.tar -C ~/HarmonyOSDev
gn/
gn/LICENCE
gn/gn

  
 
  • 1
  • 2
  • 3
  • 4

设置环境变量:

$ vim ~/.bashrc

  
 
  • 1

新增:

export PATH=/home/wongkyunban/HarmonyOSDev/gn:$PATH

  
 
  • 1

使环境变量生效:

$ source  ~/.bashrc

  
 
  • 1

5.安装ninja

解压ninja安装包至~/HarmonyOSDev路径下:

$ tar -xvf ninja.1.9.0.tar -C ~/HarmonyOSDev

  
 
  • 1

设置环境变量:

$ vim ~/.bashrc

  
 
  • 1

新增:

export PATH=~/HarmonyOSDev/ninja:$PATH

  
 
  • 1

使环境变量生效:

$ source  ~/.bashrc

  
 
  • 1

6.安装hc-gen

解压hc-gen安装包至~/HarmonyOSDev路径下:

$ tar -xvf hc-gen-0.65-linux.tar -C ~/HarmonyOSDev

  
 
  • 1

设置环境变量:

$ vim ~/.bashrc

  
 
  • 1

新增:

export PATH=~/HarmonyOSDev/hc-gen:$PATH

  
 
  • 1

使环境变量生效:

$ source  ~/.bashrc

  
 
  • 1

编译鸿蒙源码

1.下载源码

下载

2.编译

进入源码包根目录:

~/Desktop/OS/OpenHarmony$ ls
applications  build docs drivers kernel test utils
base build.py  domains  foundation  prebuilts  third_party  vendor

  
 
  • 1
  • 2
  • 3

build.py使用方法:

~/Desktop/OS/OpenHarmony$ ./build.py
Error: product not found.
usage: python build.py ipcamera_hi3516dv300
  python build.py ipcamera_hi3518ev300
  python build.py wifiiot

  
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

编译:

~/Desktop/OS/OpenHarmony$ python build.py ipcamera_hi3516dv300 -b debug

  
 
  • 1

编译好的镜像在out/ipcamera_hi3516dv300目录下:

~/Desktop/OS/OpenHarmony$ tree -L 3 out
out
└── ipcamera_hi3516dv300 ├── args.gn ├── bin │   ├── apphilogcat │   ├── appspawn │   ├── bundle_daemon │   ├── camera_app │   ├── hilogcat │   ├── init │   ├── module_ActsBootstrapTest.bin │   ├── module_ActsBundleMgrTest.bin
...

  
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14

文章来源: blog.csdn.net,作者:WongKyunban,版权归原作者所有,如需转载,请联系作者。

原文链接:blog.csdn.net/weixin_40763897/article/details/108829122

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。