【智路】智路OS air-edge 开发者手册 包管理工具

包管理工具

https://airos-edge.readthedocs.io/zh/latest/airospkg/airospkg.html

功能概述

智路OS包支持部署在智路OS开源版本和智路OS发行版。

智路OS发行版(airos distribution)是基于智路OS的商业化版本。包括智路OS内核层、系统工具、库、软件包管理系统等的集合,符合智路OS接口标准。

airospkg是一个命令行工具,预置在集成开发环境中,提供模板创建、编译、发布、安装、运行、删除 等功能。

airospkg提供了便捷的组件开发能力,让开发者只关注需要开发的模块,而不需要了解整个智路OS源码,提高开发效率。

工具使用方式如下所示:
在这里插入图片描述

创建: create

详细参数

创建的模板类型包括:

使用airospkg create可以创建一个组件包模板工程,以应用为例,创建命令为:

airospkg create -name test_app -type app

创建的包会默认放置在/home/airos/proj目录,创建的模板包含以下文件:

|-- .bazelrc              # Bazel默认构建参数
|-- .bazelversion         # 配置bazel的版本,默认5.0.0
|-- BUILD                 # Bazel的构建脚本
|-- CMakeLists.txt        # CMake构建脚本
|-- WORKSPACE             # Bazel工作空间标识
|-- conf                  # 配置目录
|   `-- app_lib_cfg.pb    # 框架加载配置
|-- example_app.cc        # 默认源文件
|-- example_app.h         # 默认头文件
|-- lib                   # 智路OS-SDK和第三方库之外的依赖库
`-- version.txt           # 包版本

编译: make

详细参数

工具支持CMake和Bazel编译,并且在创建时提供了基础的模板,可以在模板基础上修改或者增加。

以CMake为例:开发完成后可以调用以下命令进行编译:

airospkg make -type cmake     # 在包内运行
airospkg make -name test_app -type cmake    # 任意目录运行,确保包在/home/airos/projs下

注意:需要将智路OS-SDK和第三方库之外的依赖库放置到包目录下的lib文件夹中,避免发布或者安装包后,运行出现找不到依赖库的情况。

发布: release

详细参数

编译完成后,可以使用airospkg release将包的产出进行打包发布,从而可以安装到本地,或者发布给其他使用者安装到具备智路OS的机器上。

以test_app为例:

airospkg release  # 在包内运行
airospkg release -name test_app -out app.tar.gz  # 任意目录运行,确保包在/home/airos/projs下

结束后会在包内生成产出包app.tar.gz

安装: install

详细参数

SDK镜像支持本地安装并运行,默认安装目录为:

  • 应用:/home/airos/os/app/lib
  • 设备接入:/home/airos/os/device/lib
  • 服务:/home/airos/os/modules/lib

以test_app为例:

airospkg install -file /home/airos/projs/test_app/app.tar.gz

应用包会被安装在/home/airos/os/app/lib/test_app下。

运行: run

详细参数

SDK镜像支持本地运行测试

以test_app为例:

airospkg run app

智路OS框架会加载并且运行test_app包,可以根据输出或者日志确认是否正常运行。

如果运行错误,请根据以下提示进行排查:

  • 提示缺少库,确认打包时所有依赖已经放在lib文件夹
  • 缺少符号,确认编译方式是否正确,运行日志存放在/home/airos/log文件夹
  • 缺少cuda,确认环境准备是否正常

删除: remove

详细参数

airospkg remove -name test_app

删除应用的安装包

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/424789.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

WPS如何删除表格下的空白页

WPS Office(12.1.0.17827) ① 鼠标右键,选择段落 ② 行距:固定值;设置值:1磅;取消勾选,确定即可~

Qt与Udp

(1)绑定端口 (2)广播 用udp实现广播通信_udp广播-CSDN博客 数据的发送是面向整个子网的,任何一台在子网中的计算机都可以接收到相同的数据。 如果一台机器希望向其他N台机器发送信息,这时候可以使用UDP的广播。 --------------- 广播地址&#xff1…

《论层次架构及其在软件系统中的应用》写作框架,软考高级系统架构设计师

论文真题 层次架构作为软件系统设计的一种基本模式,对于实现系统的模块化、可维护性和可扩展性具有至关重要的作用。在软件系统的构建过程中,采用层次架构不仅可以使系统结构更加清晰,还有助于提高开发效率和质量。因此,对层次架构的理解和应用是软件工程师必备的技能之一…

C#开发基础之单例模式下的集合数据,解决并发访问读写冲突的问题

1. 前言 在C#中,使用单例模式管理集合数据时,如果多线程同时访问集合,容易产生并发访问的读写冲突问题。单例模式下集合数据的并发访问读写冲突是如何产生的? 单例模式确保一个类在整个应用运行期间只有一个实例,这使…

《华为 eNSP 模拟器安装教程》

1.电脑安装环境要求: 检查电脑是否安装过 eNSP 和依赖软件,如果有,请全部卸载。 安装软件列表: 2.软件安装: 安装 WinPcap: 打开安装包,单击【Next】 单击【I Agree】 单击【Install】 单击【…

supermap iclient3d for cesium场景加载雨雪效果,并加载相应材质

首先新建一个文件夹来存放材质,我选择src/assets/MaterialJson snow.json,复制粘贴,雨雪用一个就行了 {"material": {"id": "DA82AFCB-129A-4E66-995A-9F519894F58D","cullMode": "none","alphaMode"…

OpenCV结构分析与形状描述符(19)查找二维点集的最小面积外接旋转矩形函数minAreaRect()的使用

操作系统:ubuntu22.04 OpenCV版本:OpenCV4.9 IDE:Visual Studio Code 编程语言:C11 算法描述 找到一个包围输入的二维点集的最小面积旋转矩形。 该函数计算并返回指定点集的最小面积边界矩形(可能是旋转的)。开发者…

prompt实用技巧-AI+Mermaid【酷炫钉钉文档】

AI 新技能,最近 chatGPTo1 发布后模型能力出现了新的跨越,之前模型的一本正经的胡说八道幻想模式,让AI 对待理科推理明显弱于文案的 AGI 的生成。 prompt engineer 工程师程序员的福音 prompt 内容如下, 按照以上格式生成创建公…

2024年华为9月4日秋招笔试真题题解

2024年华为0904秋招笔试真题 二叉树消消乐好友推荐系统维修工力扣上类似的题--K站中转内最便宜的航班 二叉树消消乐 题目描述 给定原始二叉树和参照二叉树(输入的二叉树均为满二叉树,二叉树节点的值范围为[1,1000],二叉树的深度不超过1000)&#xff0c…

【信创】Linux上图形化多ping工具--gping的编译安装与打包 _ 统信 _ 麒麟 _ 方德

原文链接:【信创】图形化多ping工具gping的编译安装与打包 | 统信 | 麒麟 | 方德 Hello,大家好啊!今天给大家带来一篇关于在Linux操作系统上使用gping的文章。gping是一款非常实用的命令行工具,它将传统的ping命令进行了可视化改进…

『功能项目』切换职业面板【48】

我们打开上一篇47技能冷却蒙版的项目, 本章要做的事情是切换职业UI面板的功能 首先双击打开Canvas预制体在左上主角面板信息中新建一个button按钮 重命名(父物体是按钮Button,子物体Image即可) 创建一个Image 设计一下布局 复制三…

窗口嵌入桌面背景层(vb.net,高考倒计时特供版)

开发思路 根据系统生成高考倒计时的具体时间,附加江苏省省统考的时间生成算法,并且用户可以根据实际情况调整前后30天,具有丰富多彩的图片库和强大的自定义功能,效果图见P3 目前程序处于正式版的1.4版本,本程序由本作…

supermap Iclient3d for cesium加载地形并夸大地形

先看效果图 这是没有夸张之前的都江堰 这是夸大五倍后的都江堰 下面展示代码 主要就是加载supermaponline的skt地形然后夸大 <template><div class"PartOneBox"><div id"cesiumContainer"></div></div> </template>…

个人随想-向量数据库,你到底应该选择谁?

随着大模型的新起&#xff0c;vectorstore这1、2年也非常的火。从以前只能用chroma到现在几十种向量数据库&#xff0c;选都选不过来。 以我接触过的很多公司来说&#xff0c;他们去选择向量数据库的时候&#xff0c;很多都和迷茫&#xff0c;不知道应该选择哪个向量数据库&am…

自动驾驶自动泊车场景应用总结

自动泊车技术是当前智能驾驶技术的一个重要分支,其目标是通过车辆自身的感知、决策和控制系统,实现车辆在有限空间内的自主泊车操作。目前自动泊车可分为半自动泊车、全自动泊车、记忆泊车、自主代客泊车四种产品形态,其中, 根据搭载传感器和使用场景的不同,全自动泊车又可…

文本到3D生成

文本到3D生成是一种通过文本描述直接创建三维数字模型的技术。这种技术能够将语言描述转换成可视化的三维模型&#xff0c;使得内容创作者和设计师可以直接从概念阶段跳转到三维可视化&#xff0c;大大加快创作流程并提供更直观的设计和修改过程。 该技术的核心应用之一是基于…

无人直播好帮手,视频指定词语消音,消除违禁词,直播视频录制,音视频分离,分段

1.视频消音功能 一键删除或者静音视频中的词语 2.直播视频录制功能 可同时录制多个平台,多个主播,没有数量限制 3.音视频转码 支持多种音视频格式转换 4.视频频分离 分离视频中的音频和视频 5.视频合并分割 合并和按时间分割视屏 目前正在测试中…如有需要可以先使…

Netty笔记07-粘包与半包(上)

文章目录 前言1. 粘包造成粘包的原因解决粘包的方法 2. 半包造成半包的原因解决半包的方法 粘包现象服务端代码示例客户端代码示例 半包现象现象分析粘包半包滑动窗口MSS 限制Nagle 算法 前言 粘包和半包问题是网络编程中常见的问题&#xff0c;特别是在TCP协议中。通过合理的设…

[Postman]接口自动化测试入门

文章大多用作个人学习分享&#xff0c;如果大家觉得有不足或错漏的地方欢迎评论指出或补充 此文章将完整的走一遍一个web页面的接口测试流程 大致路径为&#xff1a; 创建集合->调用接口登录获取token->保存token->带着token去完成其他接口的自动化测试->断言-&g…

✔2848. 与车相交的点

代码实现&#xff1a; 方法一&#xff1a;哈希表 #define fmax(a, b) ((a) > (b) ? (a) : (b))int numberOfPoints(int **nums, int numsSize, int *numsColSize) {int hash[101] {0};int max 0;for (int i 0; i < numsSize; i) {max fmax(max, nums[i][1]);for …