鸿蒙源码编译需要在ubuntu中进行,应用开发则需要window环境。
安装虚拟机
我使用的是virtualbox。
下载后双击安装即可。
安装ubuntu
下载ubuntu镜像
我下载的是 ubuntu-20.04.1-live-server-amd64.iso ,没有图片界面的服务器版。
在virtualbox中安装ubuntu
打开之前安装的virtualbox,新建一个ubuntu系统,选中下载的ubuntu iso文件,运行后进入系统安装流程。
配置编译环境
需要用到的工具:
开发工具 | 用途 |
---|---|
Python3.7+ | 执行编译脚本工具 |
bash | 执行命令行工具 |
gn | 产生ninja编译脚本 |
ninja | 执行ninja编译脚本 |
LLVM | 编译工具链 |
hc-gen | 驱动配置编译工具 |
将Linux shell改为bash
查看shell是否为bash,在终端运行如下命令
ls -l /bin/sh
如果显示为“/bin/sh -> bash”则为正常,否则请按以下方式修改:
方法一:在终端运行如下命令,然后选择 no。
sudo dpkg-reconfigure dash
方法二:先删除sh,再创建软链接。
sudo rm -rf /bin/sh
sudo ln -s /bin/bash /bin/sh
安装Python环境
- 输入命令“python3 --version”,查看Python版本号。需使用python3.7以上版本,ubuntu-20.04.1默认安装了python3.8。
- 输入命令“sudo apt install python3-pip"安装pip3。
- 运行“sudo pip3 install kconfiglib”命令,安装GUI menuconfig工具,建议安装Kconfiglib 13.2.0+版本。(需root/sudo权限安装)。
- sudo ln -s /usr/bin/python3 /usr/bin/python
安装文件打包工具
- 运行"mkfs.vfat",如果未找到该命令,请运行"sudo apt-get install dosfstools"
- 运行"mcopy “,如果未找到该命令,请运行"sudo apt-get install mtools”
- sudo apt install zip
安装编译工具环境
安装gn
- 下载gn工具
- 解压gn安装包至~/gn路径下:“tar -xvf gn.1523.tar -C ~/”。
- 设置环境变量:“vim ~/.bashrc”, 新增:“export PATH=~/gn:$PATH”。
- 生效环境变量:“source ~/.bashrc”。
安装ninja
- 下载ninja工具。
- 解压ninja安装包至~/ninja路径下:“tar -xvf ninja.1.9.0.tar -C ~/”。
- 设置环境变量:“vim ~/.bashrc”, 新增:“export PATH=~/ninja:$PATH”。
- 生效环境变量:“source ~/.bashrc”。
安装LLVM编译工具链
- 下载LLVM工具。
- 解压LLVM安装包至~/llvm路径下:“tar -xvf llvm-linux-9.0.0-34042.tar -C ~/”。
- 设置环境变量:“vim ~/.bashrc”, 新增:export PATH=~/llvm/bin:$PATH。
- 生效环境变量:“source ~/.bashrc”。
安装hc-gen
- 下载hc-gen工具。
- 解压hc-gen安装包到Linux服务器~/hc-gen路径下:“tar -xvf hc-gen-0.65-linux.tar -C ~/”。
- 设置环境变量:“vim ~/.bashrc”, 新增:export PATH=~/hc-gen:$PATH。
- 生效环境变量:“source ~/.bashrc”。
编译
进入源码包根目录,目录内存放有build.py编译脚本,执行如下脚本编译源码包:
python build.py ipcamera_hi3516dv300 -b debug
等待编译成功…
此时看下 源码目录说明
编译好的镜像在out/ipcamera_hi3516dv300目录下