鸿蒙快速使用Hpm-cli编译鸿蒙组件

系统
随着HarmonyOS正式开源,HPM包管理器也应运而生。HPM全称HarmonyOS Package Manager。是一个HarmonyOS组件包管理和分发工具。HPM主要是面向设备开发者,用于获取/定制HarmonyOS源码,执行安装、编译、打包、升级等操作的工具集。

[[352086]]

想了解更多内容,请访问:

51CTO和华为官方合作共建的鸿蒙技术社区

https://harmonyos.51cto.com/#zz

 随着HarmonyOS正式开源,HPM包管理器也应运而生。HPM全称HarmonyOS Package Manager。是一个HarmonyOS组件包管理和分发工具。HPM主要是面向设备开发者,用于获取/定制HarmonyOS源码,执行安装、编译、打包、升级等操作的工具集。

下面就介绍一下如何使用hpm-cli工具来编译HarmonyOS提供的三种解决方案。

Let`s go!

步骤一:环境准备

需要一台 Ubuntu 16.04 及以上 64 位系统(hpm是支持windows的,但是目前鸿蒙开源的三个解决方案都只支持Ubuntu)

将Linux shell改为bash:

  1. ls -l $(which sh) 
  2. # 如果指向的不是bash,则按以下方式修改: 
  3. # 方法一:执行以下命令,然后选择no 
  4. dpkg-reconfigure dash 
  5. # 方法二:先删除sh,再重新创建软连接 
  6. rm -f /bin/sh 
  7. ln -s bash /bin/sh 

 步骤二:安装nodejs

推荐安装 Node.js 12.x (包含 npm 6.14.4)或更高版本(推荐 12.13.0+):

  1. sudo apt-get install nodejs 
  2. sudo apt-get install npm 

 查看版本: 

  1. node --version  # 查看nodejs版本 
  2. npm --version   # 查看npm版本 

 补充:如果配置的源的nodejs版本太低,可以执行以下语句后再次执行apt-get install: 

  1. curl -L https://deb.nodesource.com/setup_12.x | bash 

步骤三:安装hpm

通过 Node.js 自带的 npm(使用默认的源 https://registry.npmjs.org/)安装 hpm-cli 命令行工具: 

  1. npm install -g @ohos/hpm-cli 

步骤四:配置hpm(可选)

查看或修改 hpm 配置: 

  1. hpm config [set <key> <value>] 
  2. # 或 
  3. vim ~/.hpm/hpmrc 

 常用配置:

  1. registry = https://hpm.harmonyos.com/hpm/registry/api  # hpm注册中心地址,下载组件必须 
  2. login = https://hpm.harmonyos.com/hpm/auth/pk          # hpm处理登录地址,发布组件必须 
  3. loginUser = {your-account}                             # 配置hpm登录账号,发布组件必须 
  4. shellPath = /bin/sh                                    # hpm命令执行使用的shell 
  5. globalRepo = /root/.hpm/global                         # 全局安装的组件存放路径 
  6. http_proxy = http://your-proxy-server:port             # HTTP代理 
  7. https_proxy = http://your-proxy-server:port            # HTTPS代理 

 步骤五:安装组件

摄像头类产品: ip_camera_hi3518ev300

1. 准备python环境

需使用python3.7以上版本

  1. sudo apt-get install python3.8 
  2. sudo apt-get install python3-pip 
  3. sudo pip3 install setuptools 
  4. sudo pip3 install kconfiglib  # 建议安装kconfiglib 13.2.0+版本 
  5.  
  6. # 如果当前系统中既存在python2又存在python3,参考以下方法将默认python修改为python3 
  7. ll `which python` 
  8. rm /usr/bin/python 
  9. ln -s python3.8 /usr/bin/python 

 2. 安装文件打包工具 

  1. which mkfs.vfat  # 如果没找到,执行以下命令安装 
  2. sudo apt-get install dosfstools 

  1. which mcopy  # 如果没找到,执行以下命令安装 
  2. sudo apt-get install mtools 

 3. 初始化目录

  1. mkdir test3518 
  2. cd test3518 
  3. hpm init -t dist 

 4. 继承3518发行版

  1. hpm install @ohos/ip_camera_hi3518ev300 

5. 编译

  1. hpm dist 

6. 完成

成功后./out目录下即为编译产物,快将其烧录到你的设备上看看效果吧~

摄像头+屏幕类产品: ip_camera_hi3516dv300

1. 准备python环境

需使用python3.7以上版本

  1. sudo apt-get install python3.8 
  2. sudo apt-get install python3-pip 
  3. sudo pip3 install setuptools 
  4. sudo pip3 install kconfiglib  # 建议安装kconfiglib 13.2.0+版本 
  5.  
  6. # 如果当前系统中既存在python2又存在python3,参考以下方法将默认python修改为python3 
  7. ll `which python` 
  8. rm /usr/bin/python 
  9. ln -s python3.8 /usr/bin/python 

 2. 安装文件打包工具

  1. which mkfs.vfat  # 如果没找到,执行以下命令安装 
  2. sudo apt-get install dosfstools 

  1. which mcopy  # 如果没找到,执行以下命令安装 
  2. sudo apt-get install mtools 

 3. 初始化目录 

  1. mkdir test3516 
  2. cd test3516 
  3. hpm init -t dist 

 4. 继承3516发行版 

  1. hpm install @ohos/ip_camera_hi3518ev300 

5. 编译 

  1. hpm dist 

6. 完成

成功后./out目录下即为编译产物,快将其烧录到你的设备上看看效果吧~

WLAN连接类产品:wifi_iot

1. 准备python环境

需使用python3.7以上版本

  1. sudo apt-get install python3.8 
  2. sudo apt-get install python3-pip 
  3. sudo pip3 install setuptools 
  4. sudo pip3 install kconfiglib  # 建议安装kconfiglib 13.2.0+版本 
  5. sudo pip3 install pycryptodome 
  6. sudo pip3 install six --upgrade --ignore-installed six 
  7. sudo pip3 install ecdsa 
  8.  
  9. # 如果当前系统中既存在python2又存在python3,参考以下方法将默认python修改为python3 
  10. ll `which python` 
  11. rm /usr/bin/python 
  12. ln -s python3.8 /usr/bin/python 

 2. 安装Scons 

  1. sudo apt-get install scons  # 推荐SCons版本是3.0.4+ 

3. 初始化目录

  1. mkdir test3861 
  2. cd test3861 
  3. hpm init -t dist 

 4. 继承3861发行版 

  1. hpm install @ohos/wifi_iot 

5. 编译 

  1. hpm dist 

6. 完成

成功后./out目录下即为编译产物,快将其烧录到你的设备上看看效果吧~

想了解更多内容,请访问:

51CTO和华为官方合作共建的鸿蒙技术社区

https://harmonyos.51cto.com/#zz

 

责任编辑:jianghua 来源: 鸿蒙社区
相关推荐

2024-02-19 15:40:37

鸿蒙App备案阿里云

2021-01-06 10:05:09

鸿蒙HarmonyOSCanvas

2021-08-02 14:54:50

鸿蒙HarmonyOS应用

2020-09-30 08:54:16

鸿蒙

2021-01-04 11:10:14

鸿蒙HarmonyOSCanvas

2022-06-30 13:56:05

Rating鸿蒙

2022-10-25 15:12:24

自定义组件鸿蒙

2022-10-26 15:54:46

canvas组件鸿蒙

2021-03-03 09:42:26

鸿蒙HarmonyOS图片裁剪

2021-06-21 09:25:18

鸿蒙HarmonyOS应用

2021-08-24 14:57:27

鸿蒙HarmonyOS应用

2021-08-09 10:24:49

鸿蒙HarmonyOS应用

2021-01-20 13:50:36

鸿蒙HarmonyOS应用开发

2020-12-28 10:15:18

鸿蒙HarmonyOSListContain

2021-02-06 13:28:21

鸿蒙HarmonyOS应用开发

2021-06-24 09:32:00

鸿蒙HarmonyOS应用

2020-11-10 12:17:43

鸿蒙OS编译环境

2021-03-12 16:35:33

鸿蒙HarmonyOS应用

2021-08-03 12:47:58

鸿蒙HarmonyOS应用
点赞
收藏

51CTO技术栈公众号