评论

收藏

[HarmonyOS] 首发:OpenHarmony2.0 一站式编译烧录Hi3516标准系统

移动开发 移动开发 发布于:2021-08-06 11:54 | 阅读数:608 | 评论:0

工欲善其事,必先利其器。
6月初,OpenHarmony2.0开源后,Hi3516的小型系统已经实现ubuntu环境下的一站式开发,对于Hi3516的标准系统,同样可以一站式编译烧录,提高开发效率。

开发环境和源码升级
标准系统的开发 需在小型系统开发环境的基础上进行升级。小型系统开发参考(https://harmonyos.51cto.com/posts/7435)(ubuntu20.04,DevEco Device Tool v2.2 Beta1,源码code-2.0-canary)
1.安装依赖工具
sudo apt-get install binutils git-core gnupg flex bison gperf build-essential zip curl zlib1g-dev gcc-multilib g++-multilib libc6-dev-i386 lib32ncurses5-dev x11proto-core-dev libx11-dev lib32z-dev ccache libgl1-mesa-dev libxml2-utils xsltproc unzip m4
2.升级源码的 prebuilts
#切换到工程目录 
  cd code-2.0-canary下载脚本文件prebuilts_download.sh
  curl https://gitee.com/landwind/script-tools/raw/master/Shell/OpenHarmony/OpenHarmony_2.0_canary_prebuilts_download.sh >./prebuilts_download.sh运行脚本,下载升级源码的二进制文件,并解压到指定位置
  bash ./prebuilts_download.sh
3.标准系统编译JS Framework,需下载并配置NodeJS
#创建nodejs目录
  mkdir -p prebuilts/build-tools/common/nodejs  进入nodejs目录  
  cd prebuilts/build-tools/common/nodejs 下载nodejs  (下载较慢且网络不稳,可下载附件压缩包,放至code-2.0-canary/prebuilts/build-tools/common/nodejs 下 )   
  wget --no-check-certificate https://nodejs.org/download/release/v12.18.4/node-v12.18.4-linux-x64.tar.gz 解压nodejs压缩包
  tar -zxvf node-v12.18.4-linux-x64.tar.gz   设置NodeJS环境变量
  echo "export PATH=pwd/node-v12.18.4-linux-x64/bin:${PATH}" >> ~/.bashrc;source ~/.bashrc切换到之前的目录 code-2.0-canary 下
cd -
进入源代码的third_party/jsframework目录,准备下载node_modules包
  cd third_party/jsframework下载node_modules包  
  npm install升级npm
  npm install -g npm切换到之前的目录 code-2.0-canary 下
cd -
在prebuilts/build-tools/common下创建js-framework目录
  mkdir -p prebuilts/build-tools/common/js-framework把下载的node_modules包放入js-framework
  cp -rp third_party/jsframework/node_modules prebuilts/build-tools/common/js-framework/
恭喜你,标准系统开发环境搭建成功!

编译
环境搭建好,就可以编译了。在code-2.0-canary 工程的命令窗口,执行标准系统的编译指令
./build.sh --product-name Hi3516DV300
首次编译较慢,大约一小时,编译完成。
DSC0000.png
对源代码applications/standard/hap/BUILD.gn稍作修改,保存,再次编译,77秒,编译成功
DSC0001.png
编译后生成的烧录文件,输出在 out/ohos-arm-release/packages/phone/images/ 目录下

烧录
Hi3516DV300烧录标准系统,有USB、网口和串口烧录三种方式,串口太慢,USB只能在windows下使用,我们采用网口方式烧录。

  • 首先开发板通电,用串口线连接电脑USB口和开发板,把电脑和开发板分别通过网线连接到路由器。
  • 打开DevEco Device Tool,在Projects中,点击code-2.0-canary工程的Settings打开工程配置界面。
  • Partition Configuration选项卡中,删除原有4项烧录文件信息,添加位于out/ohos-arm-release/packages/phone/images/下的7项烧录文件信息
    DSC0002.png
  • 在“hi3516dv300”选项卡下,设置烧录选项 ,注意设置之前需完成硬件连接并通电。
    DSC0003.png
    5.网络设置如下:
    upload_net_server_ip: 电脑主机的IP地址,本机为 192.168.1.101
    upload_net_client_mask:开发板的子网掩码,自动生成 255.255.255.0
    upload_net_client_gw: 开发板的网关,自动生成 192.168.1.1,需留心与路由器是否一致
    upload_net_client_ip: 开发板的IP地址,自动生成 192.168.1.2
    DSC0004.jpg
  • 工程配置完成后,点击右上部Save进行保存。
  • 打开DevEco Device Tool界面,在PROJECT TASKS中,点击code-2.0-canary下hi3516dv300的Upload按钮,启动烧录。
  • 开始烧录后,根据提示,对Hi3516开发板断电再上电
  • 重新上电后,先串口烧录,再网口烧录,十分钟左右,烧录成功。
    DSC0005.png
    开发板自动重启,进入OpenHarmony2.0标准系统的开机桌面
    DSC0006.png
    总结
  • 标准系统初次编译较慢,后续增量编译一般可以在几分钟之内完成,加上烧录10分钟左右,标准系统的编译烧录一般为十多分钟或者更少,基本可以满足学习和开发需求。
  • 手动配置Partition Configuration烧录信息较为繁琐,相比轻量系统的自动配置或者烧录工具Hitool的一键配置,后续版本DevEco Device Tool相信会加以改进
  • OpenHarmony2.0的源码code-2.0-canary在ubuntu环境下,小型系统和标准系统都已实现一站式开发。在windows环境下,轻量型Hi3861的也已实现一站式开发。
想了解更多关于鸿蒙的内容,请访问:
51CTO和华为官方战略合作共建的鸿蒙技术社区
https://harmonyos.51cto.com/#bkwz

关注下面的标签,发现更多相似文章