【XR806开发板试用】第一篇-基于ArchLinux配置开发环境并烧录

news2025/1/13 5:57:40

前段时间很幸运的申请到了XR806的这块开发板子。由于出差、生病还有各种事情的影响,这周末才有空拿出来收到的板子把玩一番。前段时间也抽空看了看其他工程师的体验文章。初步了解到全志为这块板子提供了比较方便的Linux开发环境。嗯,毕竟搞嵌入式嘛,很多产品居然不提供Linux下开发的条件这点也是迷惑,全志这点很好。
本次体验文章,及后续其他的应用分享都是基于Linux环境。开发环境软硬件情况如下:工作站是一台老Intel Core 笔记本一台,8G内存,Archlinux环境。我一般习惯于将开发环境放入虚拟机。开发虚拟机环境为Libvirt上运行的Archlinux,虚拟机中为终端环境,没有桌面。开发板的资源参考官方文档
首先在虚拟机中安装ArchLinux,安装方法可以参见官方文档
开始正式进入开发环境的搭建。这里建议新手可以先详细看下官方的文档,再看下其他工程师写的测评文章,目前主要是开发板官方文档、OpenHarmony官方环境配置文档、以及其他工程师写的教程,数量不多,先熟悉之后再配环境,遇到问题会更好解决。

一、搭建鸿蒙开发环境

参考官方Ubuntu开发环境搭建教程。
使用repo获取源码,repo依赖Python3环境,官方要求是Python3.7,ArchLinux目前官方软件库已经到Python3.10,因此可以直接装

sudo Pacman -S python  python-pip

在Arch下通过如下命令获取repo

git clone https://gerrit-googlesource.lug.ustc.edu.cn/git-repo

因为目前仓库使用的还是OpenHarmony_v1.x分支,所以还需要安装llvm,下载9.0.0版本的llvm

解压llvm到一个目录,这个目录自己要知道,用来配置环境变量

配置llvm环境变量

vim ~/.bashrc

内容如下,因为已经看别人的文档知道后面还需要配置hb的环境变量,因此在这里也一并将hb环境变量配置好了。
然后接下来安装编译工具hb

python3 -m pip install --user ohos-build

安装完之后source一下

source ~/.bashrc

执行"hb -h",有打印以下信息即表示安装成功:
在这里插入图片描述

Q1:这里遇到一个问题,hb报错

ImportError: cannot import name 'Mapping' from 'collections' (/usr/lib/python3.10/collections/init.py)

分析错误信息,将~/.local/lib/python3.10/site-packages/prompt_toolkit/styles/from_dict.py中的"from collections import Mapping" 改为"from collections.abc import Mapping"

继续获取openharmony源代码

repo init -u https://gitee.com/openharmony/manifest.git -b OpenHarmony_1.0.1_release --no-repo-verify
repo sync -c
repo forall -c 'git lfs pull'`

环境配好了就可以进行代码编译了,下载编译工具 gcc-arm-none-eabi-10-2020-q4-major,设置编译工具的目录。

对代码工程进行配置

cd device/xradio/xr806/xr_skylark                           
cp project/demo/audio_demo/gcc/deconfig .config             
make menuconfig                                             
make build_clean                                           
make lib -j                                                 
cd -                                                       
hb set                                                     
hb build -f   

编译完成为后就可以用

/xr806_openharmony/git-repo/xr806_openharmony/device/xradio/xr806/xr_skylark/tools/

目录的phoenixMC进行烧录。

在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Python乱码恢复

比如说网页是ISO-8859-1编码,然后requests得到的是乱码, 那么这样操作就可以还原数据:res.text.encode(‘ISO-8859-1’).decode(‘utf-8’) 乱码恢复网站,可以知道是什么编码http://www.mytju.com/classCode/tools/messyCodeReco…

【深度学习笔记】计算机视觉——风格迁移

风格迁移 摄影爱好者也许接触过滤波器。它能改变照片的颜色风格,从而使风景照更加锐利或者令人像更加美白。但一个滤波器通常只能改变照片的某个方面。如果要照片达到理想中的风格,可能需要尝试大量不同的组合。这个过程的复杂程度不亚于模型调参。 本…

2024-阿里巴巴灵犀互娱校招内推

灵犀互娱是阿里集团旗下研运一体游戏品牌,在业务模式上,灵犀互娱面向全球,研运一体,坚持精品,打造爆款,重视服务玩家。 访问链接即刻开启内推:https://talent.lingxigames.com/campus/qrcode/…

第十二篇:学习python数据清洗

文章目录 一、啥是数据清洗二、将表格数据导入pandas中1. 准备工作2. 引入csv文件2.1 引入pandas库2.2 读取文件/修改名称3.2 快速浏览数据2.4 修改名字2.5 查找缺失值2.6 删除缺失值 3. 引入Excel文件3.1 引入pandas库3.2 读取Excel文件的人均GDP数据3.3 查看数据类型和non-nu…

速卖通关键字搜索API接口实战:Python代码与搜索策略解析

一、速卖通关键字搜索API简介 速卖通(AliExpress)作为阿里巴巴旗下的国际电商平台,为卖家和买家提供了便捷的交易渠道。其开放平台提供的API接口允许开发者集成速卖通的各种功能,其中之一就是关键字搜索API。通过这个API&#xf…

备考2024年北京高考数学:20114~2023十年选择题练习和解析

距离2024年高考还有三个月的时间,如何用三个月的时间再提高北京数学高考的成绩?吃透历年真题以及背后的知识点是行之有效的方法 之一。 今天我们来看一下2014-2023年的北京市高考数学的选择题,从过去十年(2014-2023)的…

【JSON2WEB】09 Amis-editor的代码移植到json2web

【JSON2WEB】01 WEB管理信息系统架构设计 【JSON2WEB】02 JSON2WEB初步UI设计 【JSON2WEB】03 go的模板包html/template的使用 【JSON2WEB】04 amis低代码前端框架介绍 【JSON2WEB】05 前端开发三件套 HTML CSS JavaScript 速成 【JSON2WEB】06 JSON2WEB前端框架搭建 【J…

大语言模型的Scaling laws(尺度定律)的正确认识

源自:人工智能前沿讲习 “人工智能技术与咨询” 发布 实验一 声明:公众号转载的文章及图片出于非商业性的教育和科研目的供大家参考和探讨,并不意味着支持其观点或证实其内容的真实性。版权归原作者所有,如转载稿涉及版权等问题,…

数据分析案例-二手车用户数据可视化分析(文末送书)

🤵‍♂️ 个人主页:艾派森的个人主页 ✍🏻作者简介:Python学习者 🐋 希望大家多多支持,我们一起进步!😄 如果文章对你有帮助的话, 欢迎评论 💬点赞&#x1f4…

为什么被蜜蜂蛰了会肿得像馒头

有的人却只是一点点小鼓包。 病情分析:蜜蜂体内存在一种有毒物质,其主要成分是蚁酸,这种成分进入人体后,会和血液发生反应,导致皮肤表现出红肿和瘙痒的症状。一些人群还会对蜜蜂表现出过敏反应,此类人群在…

活动策划整体流程需要考虑哪些要素

传媒如春雨,润物细无声,大家好,我是51媒体网胡老师。 活动策划整体流程中需要考虑的要素非常多,这些要素通常涵盖从策划前的准备到活动结束后的总结,以下是一些关键的考虑要素: 活动目标:确定活…

单片机为什么需要时钟?2种时钟电路对比?

目录 一、晶体振荡器(Crystal Oscillator)的核心知识 二、单片机为什么需要时钟电路? 三、单片机的时钟电路方案 01、外部晶振方案 02、内部晶振方案 四、总结 单片机研发设计的项目中,它的最小电路系统包含 电源电路复位…

QT:颜色选择器

普通 Qt提供了一个现成的QColorDialog类。 用法: #include <QColorDialog>QColor color QColorDialog::getColor(Qt::white, this); if(!color.isValid()){//点击 关闭 或 cancel 颜色无效 }else {ui->text->setText(color.name());//类似##ffffQRgb rgb colo…

Android9-W517-使用NotificationListenerService监听通知

目录 一、前言 二、前提 三、方案 方案一 方案二 方案三 方案四 方案五 方案六 方案七 四、关于NotificationListenerService类头注释 五、结论 一、前言 NotificationListenerService可以让应用监听所有通知&#xff0c;但是无法获得监听通知的权限&#xff0c;如…

x86 Ubuntu上编译eudev给龙芯loongarch64架构主机使用

1、下载eudev库eudev-master.zip&#xff0c;链接&#xff1a;eudev库官方地址 2、下载龙芯的交叉编译工具&#xff1a;loongson-gnu-toolchain-8.3-x86_64-loongarch64-linux-gnu-rc1.2.tar.xz&#xff0c;链接&#xff1a;龙芯交叉编译官方地址 3、交叉编译器环境搭建 (1)、…

Spring-Cloud中服务发现是什么?干什么的?怎么用?

&#x1f413; 是什么 Spring Cloud通过Eureka或Consul等服务注册与发现组件来实现微服务间的相互感知。服务提供者将自己的服务信息注册到注册中心&#xff0c;服务消费者从注册中心获取服务提供者的信息&#xff0c;从而进行服务调用。 &#x1f413; 干什么 在Spring Cloud…

nodejs安装教程(及过程中的易错)

nodejs&#xff1a;Nodejs 是基于 Chrome 的 V8 引擎开发的一个 C 程序&#xff0c;目的是提供一个 JS 的运行环境。 npm&#xff1a;npm 是 Node Package Manager 的缩写&#xff0c;意思是 Node 的包管理系统&#xff0c;是最大的软件包仓库 下载nodejs 首先我们需要在node…

VNC 与 虚拟机 保姆级 快速入门图文指导

Time: 2024年3月5日22:31:49 By[ V ]: MemoryErHero 重要的事情先说三遍: 1 虚拟机内无需安装 VNC-Viewer-7.0.1-Windows 2 虚拟机内无需安装 VNC-Viewer-7.0.1-Windows 3 虚拟机内无需安装 VNC-Viewer-7.0.1-Windows 1 VNC 图文安装 流程 ① VNC-Viewer-7.0.1-Windows.e…

【Python】Python注册微服务到nacos

Python注册微服务到Nacos 1.Nacos部署 github 的nacos项目的发布页&#xff08;Releases alibaba/nacos GitHub &#xff09;&#xff0c;选择所要下载的nacos版本&#xff0c;在nacos下方的assets中选择安装包进行下载。 解压nacos安装包到指定目录。 tar -zxvf nacos-ser…

SpringCloud-MQ消息队列

一、消息队列介绍 MQ (MessageQueue) &#xff0c;中文是消息队列&#xff0c;字面来看就是存放消息的队列。也就是事件驱动架构中的Broker。消息队列是一种基于生产者-消费者模型的通信方式&#xff0c;通过在消息队列中存放和传递消息&#xff0c;实现了不同组件、服务或系统…