今日看点

【HarmonyOS HiSpark AI Camera试用连载 】编译及开发环境搭建

发表于话题:HarmonyOS 2
发布时间:2021-06-02

0、序

  由于HarmonyOS的源码编译需要Linux环境,目前HarmonyOS源码只支持在Linux系统中进行编译,可以将Linux环境下的工程目录映射到Windows环境下,然后使用DevEco Device Tool打开,并在Windows环境下进行烧录和调试。所以需要Linux server + Win workstations + Dev Kit结合使用。

1、首先配置Windows端环境

1.1、安装visual studio code

  官网传送门:https://code.visualstudio.com/,勾选添加到PATH。

安装成功,可在命令行工具进行软件版本的验证:code --version。

1.2、安装Node.js

  官网传送门:https://nodejs.org/en/download/,根据自己PC的系统下载对应的版本。

  安装start…

  下载完成后,点击软件包进行安装,勾选图中的选项框,自动安装必要工具(如Python、Visual Studio构建工具链);

  显示安装完成之后,点击任意键继续,安装其他依赖的工具;

  新增NODE_PATH变量,值为:C:\Users{userName}\AppData\Roaming\npm\node_modules,其中userName请替换为实际的用户名称,验证是否安装成功,打开命令行工具,输入"node -v",能显示出版本号即安装成功。

1.3、安装JDK

  打开命令行工具,输入java -version命令,检查版本号是否1.8版本。安装JDK不再赘述,版本要求为:1.8版本。

1.4、安装hpm

npm install -g @ohos/hpm-cli


  查看hpm的版本,检查是否安装成功。

hpm -V

1.5、安装VS code插件

  下载离线包,采用磁盘安装的方式,下载DevEco Device Tool安装包传送门:https://device.harmonyos.com/cn/ide
详细的安装方法:https://device.harmonyos.com/cn/ … ection5353233124511(环境准备章节)。

2、Ubuntu环境配置

2.1、Ubuntu虚拟机的安装

  Ubuntu使用的是2020.04 LTS版本,Ubuntu的安装流程就不再赘述了,跟着提示走就行了。

  在安装Ubuntu后需要安装VMware Tools, 安装VM Tool之后就可以进行全屏操作,PC主机和虚拟机之间的粘贴、复制等操作了。 出现下述的问题时,先取消安装VM Tool工具,先将网络相关的工具先安装上,再进行安装。

sudo apt-get install net-tools

  安装完成,可以全屏了。

2.2、更换软件源

  换源,将Ubuntu的软件源换成国内的软件源,在下更换的是五道口的源,由于原Ubuntu的软件源,server都是海外的,在软件安装时因网络问题造成的安装失败或者其他错误也遇到过不少,所以换成一个比较稳定的源还是挺重要的。PS:记得在换源之前,将原本的软件源文件进行备份以便不时之需。

deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ eoan main restricted universe multiverse deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ eoan main restricted universe multiverse deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ eoan-updates main restricted universe multiverse deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ eoan-updates main restricted universe multiverse deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ eoan-backports main restricted universe multiverse deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ eoan-backports main restricted universe multiverse deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ eoan-security main restricted universe multiverse deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ eoan-security main restricted universe multiverse deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ eoan-proposed main restricted universe multiverse deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ eoan-proposed main restricted universe multiverse

  换源之后更新软件列表和升级软件。

sudo apt-get update sudo apt-get upgrade

2.3、shell设置

  将Linux shell改为bash,首先查看shell是否为bash,如果显示为“/bin/sh -> bash”则为正常,否则请按以下方式修改在终端运行如下命令。

选择 no即可。

2.4、python安装

2.4.1、python3安装

sudo apt-get install python3.8

  若系统已安装python3.8或python3.7以上版本则可跳过此步骤。

2.4.2、pip管理工具安装

  获取安装包进行安装

curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py

  使用安装包安装的方式,需要先安装curl。

2.4.3、安装GUI menuconfig工具(Kconfiglib)

2.5、安装文件打包工具

1)安装dosfstools。 sudo apt-get install dosfstools 2)安装mtools。 sudo apt-get install mtools 3)安装mtd-utils。 sudo apt-get install mtd-utils

2.6、安装编译环境

  可从官网download下来安装,同时可在Ubuntu中借助wget工具下载,本人这里是在使用wget工具进行下载。

wget https://repo.huaweicloud.com/harmonyos/compiler/gn/1523/linux/gn.1523.tar wget https://repo.huaweicloud.com/harmonyos/compiler/ninja/1.9.0/linux/ninja.1.9.0.tar wget https://repo.huaweicloud.com/harmonyos/compiler/clang/9.0.0-34042/linux/llvm-linux-9.0.0-34042.tar wget https://repo.huaweicloud.com/harmonyos/compiler/hc-gen/0.65/linux/hc-gen-0.65-linux.tar


设置环境变量

export PATH=~/gcc_riscv32/bin:$PATH export PATH=~/ninja:$PATH export PATH=~/gn:$PATH export PATH=~/hc-gen:$PATH export PATH=~/llvm/bin:$PATH

注意:上述文件都是存放在用户的根目录的哦。
  设置完成之后,更新环境变量:

source ~/.baashrc

3、编译与烧录

3.1、编译

  在linux服务器上,进入源码包根目录,目录内存放有build.py编译脚本,执行如下脚本编译源码包。结果文件生成在out/ipcamera_hi3516dv300目录下。

python build.py ipcamera_hi3516dv300 -b debug

编译成功:

3.2、烧录

3.2.1、使用网口方式烧录

  配置开发板和PC主机环境。

  主机ping通,OK。

3.2.2、配置HiTool工具

选择烧录方式为网口烧录;设置服务器IP,即PC主机的IP;设置板端相关信息,即开发板的IP及物理地址等;根据分区信息添加要烧写的文件,本次烧录只烧写内核kernel、根文件系统rootfs、用户文件系统useRFs。
  关于HiTool的更多使用方法可以参考以下链接的视频教程:http://t.elecfans.com/v/17682.html。

  烧录成功之后需要配置u-boot的启动参数:1)setenv bootcmd "mmc read 0x0 0x80000000 0x800 0x4800; go 0x80000000"; 读取FLASH起始地址为0x800(单位为512B,即1MB),大小为0x4800(单位为512B,即9MB)的内容到0x80000000的内存地址,该大小(9MB)OHOS_Image.bin文件大小必须相同。 2)setenv bootargs "console=ttyAMA0,115200n8 root=emmc fstype=vfat rootaddr=10M rootsize=15M rw"; 表示设置启动参数,输出模式为串口输出,波特率为115200,数据位8,rootfs挂载于emmc器件,文件系统类型为vfat,“rootaddr=10M rootsize=15M rw”处对应填入rootfs.img的烧写起始位置与长度,此处与rootfs.img文件时所填大小必须相同。 3)saveenv 保存启动参数。 4)reset 重启。

3.3、来自HarmonyOS的helloworld

#include #include "los_sample.h" int main(int argc, char **argv) { printf("\n************************************************\n"); printf("\n\t\tHello World!\n"); printf("\n\t\t\t\t From: OHOS\n"); printf("\n************************************************\n\n"); LOS_Sample(g_num); return 0; }


  以上,来自HarmonyOS的Hello World!达成。

:来源于电子发烧友论坛
本人主页:https://bbs.elecfans.com/user/2105315/

标签组:[linux编译

本文来源:https://www.kandian5.com/articles/23983.html

相关阅读

王承恩墓简介

北京昌平区明十三陵陵区内、思陵前方有一座陪葬墓,普遍认为该墓是明朝末年明崇祯皇帝朱由检的心腹太监王承恩的墓葬,通常称为王承恩墓。墓保留仍旧比较完好。墓葬简介陵只剩一个直径6米的土堆,但却完整地保留了三...

2025-04-30

西井陪葬墓简介

西井,属于北京昌平区明十三陵陵区内,是明长陵的妃嫔陪葬墓之一。位于定陵西南,昭陵之北,占地面积比东井还大。概述 西井的现存状况不如东井,围墙只有北面一段残存。宝城和殿堂仅存遗址可以辨认。宝城下面几十米...

2025-04-30

明悼陵介绍

悼陵,即“世宗三妃墓”,俗称"大宫"。是北京昌平明十三陵的七座陪葬墓之一。位于袄儿峪。原葬明世宗嘉靖皇帝的原配妻子孝洁陈皇后。后来陈皇后迁葬永陵,悼陵成为明世宗其他三位妃子的墓所。墓葬简介世宗三妃墓(...

2025-04-30

东井陪葬墓介绍

东井,当地俗称东娘娘宫,位于北京昌平区明十三陵陵区内,是长陵的妃嫔陪葬墓之一。东井在德陵东南馒头山之南,坐东朝西。在德陵村和德陵之间,与一户农家小院隔路相邻。在一片荒草之中,愕然耸立着一块无字碑,与十...

2025-04-30

郑贵妃墓简介

郑贵妃墓,位于北京昌平区、明十三陵陵区内,万娘坟村(万贵妃墓)而南约1公里处的银钱(泉)山,坐北朝南。是明十三陵的7座妃子墓之一,墓主人为明神宗万历皇帝的皇贵妃郑氏。墓园介绍郑贵妃墓是明十三陵的7座妃...

2025-04-30

神宗四妃墓介绍

神宗四妃墓,又称作神宗四妃坟,俗称东小宫。是明十三陵的7座妃子墓之一,是明神宗万历皇帝四位妃子的合葬墓。神宗四妃墓位于北京市昌平区十三陵,郑贵妃墓西南200米处。规模不大,也就相当于郑贵妃墓的四分之一...

2025-04-30

明茂陵与聚宝山的关系

明茂陵,位于裕陵右侧的聚宝山下,是明朝第八代皇帝宪宗纯皇帝朱见深(年号成化)和王氏、纪氏、邵氏三位皇后的合葬陵寝。茂陵的建筑在清初时保存尚好,而且祾恩殿内的陈设也保存较多。顾炎武《昌平山水记》记载顺治...

2025-04-30

明十三陵神路简介

十三陵神道,即长陵神道,是长陵陵寝建筑的前导部分。总长约7.3公里。明朝时由南而北,依次建有石牌坊、三空桥、大红门、神功圣德碑亭、石像生、棂星门、南五空桥、七空桥、北五空桥等系列神道墓仪设施及桥涵建筑...

2025-04-30

《吕氏春秋·开春论》贵卒赏析

【原文】力贵突①,智贵卒②。得之同则速为上,胜之同则湿③为下。所为贵骥者,为其一日千里也;旬日取之④,与驽骀⑤同。所为贵镞矢者⑥,为其应声而至;终日而至,则与无至同。吴起谓荆王⑦曰:“荆所有余者地也;...

2025-04-30

《庄子·外篇·达生》原文

达生之情者,不务生之所无以为;达命之情者,不务知之所无奈何。养形必先之以物,物有余而形不养者有之矣。有生必先无离形,形不离而生亡者有之矣。生之来不能却,其去不能止。悲夫!世之人以为养形足以存生,而养形...

2025-04-30