开发环境:
开发系统:Ubuntu 20.04
Harmony版本:code-v1.1.4-LTS.tar

HiSpark IPC Camera基于华为海思Hi3518芯片,支持LiteOS、OpenHarmony,广泛应用于智能摄像头、安防监控等场景。

本文将介绍如何搭建HiSpark IPC Camera开发环境,OpenHarmony主要在Linux平台上开发,因此需要使用Linux环境开发,要想使用Linux开发环境,可以选择安装Linux系统,也可在Windows上安装虚拟机,笔者就是使用的该方式,这种方式的好处是可以随时拷贝,非常方便。

笔者的虚拟机使用的是VMware Workstation,Linux系统使用的是Ubuntu 20.04,关于VMware Workstation的安装和Ubuntu的安装笔者这里就不在赘述了,笔者默认大家已经装好VMware Workstation和Ubuntu。

2.1安装依赖包

更新主机的源列表:

$ sudo apt-get update

安装依赖包:

$ sudo apt-get install build-essential gcc g++ make zlib* libffi-dev e2fsprogs pkg-config flex bison perl bc openssl libssl-dev libelf-dev libc6-dev-amd64 binutils binutils-dev libdwarf-dev u-boot-tools mtd-utils cpio device-tree-compiler git git-lfs curl python3-pip tree

值得注意的是,如果Ubuntu Shell环境如果不是bash,则需要修改为bash。检测命令如下:

$ ls -l /bin/sh

打开终端工具,执行如下命令:

$ sudo dpkg-reconfigure dash

然后选择No,即可将Ubuntu shell由dash修改为bash。

然后再检查环境:

2.2获取源码

OpenHarmony的最新版本是3.1(2022-03-30),关于OpenHarmony的所有版本的更新信息请参看Release Notes。

Release Notes

源码下载地址

笔者这里下载1.1.4版本。该版本是V1.x的最新和最稳定版本。

值得注意的是,不同版本的环境和编译方式是是不同的。

当然啦,这里可以使用Git下载。

关于如何使用Git下载源码请参看官网的参考手册:
quickstart-ide-lite-sourcecode-acquire

在Ubuntu用户目录下新建OpenHarmony。

$ mkdir OpenHarmony
$ cd ~/OpenHarmony

然后将源码拷贝到OpenHarmony目录中解压。

2.3安装hb工具

hb是HarmonyOS新增加的编译构建命令行工具。需要Python 3.7.4及以上版本的支持,建议安装3.8.x。Ubuntu 20.04默认安装的是Python 3.8.10。

在源码根目录下执行:

$ cd ~/OpenHarmony
$ python3 -m pip install --user build/lite

然后设置环境变量

$ vim ~/.bashrc

将以下命令拷贝到.bashrc文件的最后一行,保存并退出。

export PATH=~/.local/bin:$PATH

执行如下命令更新环境变量。

$ source ~/.bashrc

执行hb -h有相关帮助信息,有打印信息即表示安装成功:

卸载方法:

$ python3 -m pip uninstall ohos-build

官方手册

2.4安装Python工具

1.安装Scons
运行如下命令,安装SCons安装包。

$ python3 -m pip install scons

运行如下命令,查看是否安装成功。如果安装成功,查询结果下图所示。

$ scons -v

版本要求3.0.4以上。

2.安装python工具模块
运行如下命令,安装python模块setuptools。

$ pip3 install setuptools

3.安装Kconfiglib
安装GUI menuconfig工具(Kconfiglib),建议安装Kconfiglib 13.2.0+版本,命令如下:

$ pip3 install kconfiglib

4.安装Python签名依赖的组件包
安装升级文件签名依赖的Python组件包,包括:pycryptodome、six、ecdsa。安装ecdsa依赖six,请先安装six,再安装ecdsa。

命令如下:

$ pip3 install pycryptodome
$ pip3 install six --upgrade --ignore-installed six
$ pip3 install ecdsa

2.5下载、配置编译工具链

下载地址

分别下载 gn、ninja、hc-gen 包。

$ wget https://repo.huaweicloud.com/harmonyos/compiler/gn/latest/linux/gn-linux-x86-1717.tar.gz
$ wget https://repo.huaweicloud.com/harmonyos/compiler/ninja/1.10.1/linux/ninja-linux-x86-1.10.1.tar.gz
$ wget https://repo.huaweicloud.com/harmonyos/compiler/hc-gen/0.65/linux/hc-gen-0.65-linux.tar

解压上述压缩包,然后将程序移到/usr/local/bin/目录。

下载配置clang编译工具。

$wget https://repo.huaweicloud.com/harmonyos/compiler/clang/9.0.0-36191/linux/llvm-linux-x86_64-9.0.0-36191.tar.gz

将llvm-linux-x86_64-9.0.0-36191.tar.gz压缩包放到/opt目录,然后解压:

$ sudo tar -xvf llvm-linux-x86_64-9.0.0-36191.tar.gz

接着修改环境变量:

$vim ~/.bashrc

将以下命令拷贝到.bashrc文件的最后一行,保存并退出。

export PATH=/opt/llvm/bin:$PATH

生效环境变量。

$ source ~/.bashrc

下载配置gcc_riscv32编译工具。

gcc_riscv32下载地址

将下载的压缩包拷贝到Ubuntu的/opt目录。

然后解压gcc_riscv32-linux-7.3.0.tar.gz:

$ sudo tar -xvf gcc_riscv32-linux-7.3.0.tar.gz

接着修改环境变量:

$vim ~/.bashrc

将以下命令拷贝到.bashrc文件的最后一行,保存并退出。

export PATH=/opt/gcc_riscv32/bin:$PATH

生效环境变量。

$ source ~/.bashrc

检查编译器信息,命令如下:

$ riscv32-unknown-elf-gcc -v

表明编译器安装成功。


欢迎访问我的网站

BruceOu的哔哩哔哩
BruceOu的主页
BruceOu的博客
BruceOu的CSDN博客
BruceOu的简书
BruceOu的知乎


欢迎订阅我的微信公众号

关注公众号[嵌入式实验楼]获取更多资源

《HarmonyOS开发 - IPC Camera开发笔记》第2章 HiSpark IPC Camera开发环境搭建(基于V1.1.4)相关推荐

  1. Hi3516开发笔记(三):Hi3516虚拟机基础环境搭建之交叉编译环境境搭建以及开机启动脚本分析

    若该文为原创文章,转载请注明原文出处 本文章博客地址:https://hpzwl.blog.csdn.net/article/details/121458516 长期持续项目技术分享,Shang业Di ...

  2. Hi3516开发笔记(二):Hi3516虚拟机基础环境搭建之串口调试、网络连接以及sftp文件传输

    若该文为原创文章,转载请注明原文出处 本文章博客地址:https://hpzwl.blog.csdn.net/article/details/121314575 长期持续项目技术分享,Shang业Di ...

  3. MyBatis-学习笔记01【01.Mybatis课程介绍及环境搭建】

    Java后端 学习路线 笔记汇总表[黑马程序员] MyBatis-学习笔记01[01.Mybatis课程介绍及环境搭建][day01] MyBatis-学习笔记02[02.Mybatis入门案例] M ...

  4. mysql的安装版本有无开发版_moodle 2.0.2 安装图文教程 2——PHP Mysql环境搭建和moodle安装 - 乔木的日志 - ICT教育 - 中小学信息技术教育和教育信息化网站...

    moodle 2.0.2 安装图文教程 2--PHP+Mysql环境搭建和moodle安装 热度 6已有 211 次阅读 2011-3-29 16:49 ||关键词:moodle 2 图文安装教程 p ...

  5. Metro UI CSS 学习笔记之一:简介和Metro UI CSS 环境搭建

    简介: Metro UI CSS 是一套用来创建类似于Windows 8 Metro UI风格网站的样式. 这组风格被开发成一个独立的解决方案.Metro UI CSS包含两种类型的许可证: MIT和 ...

  6. 干货! 快速上手typescript的学习笔记 (对比JS的新特性,环境搭建,webpack配置,ts编译配置)

    前提需要有js的基础 文章目录 TypeScript 产生背景 什么是TypeScript? TypeScript增加了什么 TypeScript开发环境搭建 基本类型 编译文件配置 tsconfig ...

  7. 【VS开发】VSTO 学习笔记(十)Office 2010 Ribbon开发

    微软的Office系列办公套件从Office 2007开始首次引入了Ribbon导航菜单模式,其将一系列相关的功能集成在一个个Ribbon中,便于集中管理.操作.这种Ribbon是高度可定制的,用户可 ...

  8. Android开发艺术探索读书笔记(第5章 RemoteView)

    原理 RemoteView的作用是在其他进程中显示并更新view界面. 大量的IPC操作会影响效率,为了解决这个问题,系统并没有通过Binder去直接支持View的跨进程访问,而是提供了一个Actio ...

  9. 《Linux4.0设备驱动开发详解》笔记--第三章:Linux下的C编程特点

    3.1 Linux编码风格 参考文章:Documentation/CodingStyle 缩进用TAB {}使用: 对于结构体.if.for.while以及switch语句,"{" ...

最新文章

  1. 学术干货:看清华教授如何将深度学习引入音频信号处理
  2. Yoshua Bengio团队通过在网络「隐藏空间」中使用降噪器以提高深度神经网络的「鲁棒性」
  3. kubenetes kubectl命令记录
  4. Java基础——Servlet(六)分页相关
  5. dosbox更新加载的文件夹
  6. python进度条 pyqt_python如何通过pyqt5实现进度条
  7. Linux Shell编程之脚本执行方式
  8. LaTeX之参考文献的写法
  9. 微软BI 之SSRS 系列 - 解决Pie Chart 中控制标签外部显示与标签重叠的问题
  10. POM思想__多个页面时进行的处理
  11. windows上QT设置debugger的方法
  12. linux 删除进程的多种方法
  13. 使用eclipse进行debug
  14. 摄像头各参数的意义_摄像机参数详解—九大参数介绍
  15. 如何消除Permission is only granted to system apps报错
  16. 2015互联网校招总结—一路走来
  17. matlab 程序文件,MATLAB程序文件
  18. Lazada(来赞达):就三个步骤!搞定Lazada店铺装修
  19. H.265及最新芯片模组技术现状和研究方向
  20. Docker零基础从入门到精通(全)

热门文章

  1. python根据分类动态获取豆瓣排行榜
  2. ④ESP8266 开发学习笔记_By_GYC 【Ubuntu系统下ESP8266 开发环境搭建】
  3. wacom固件更新错误123,数位板驱动更新不了
  4. 【自己动手写CPU】除法指令的实现
  5. Android bitmap加载占用内存分析(draw too large bitmap)
  6. FME教程:表格数据分组统计总数的三种实现方式
  7. 尝试用单片机以及GSM模块做出一个简易手机(1)
  8. 开源后台管理系统WeMall7
  9. 转:《音响世界》十年音响示范唱片
  10. 2018年3月php开发面试最新快报(链家+一下科技+新浪+自如+百度)-热气腾腾[题目+答案]