【xr806开发板试用】环境搭建及编译下载

2024-03-18 15:52

本文主要是介绍【xr806开发板试用】环境搭建及编译下载,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1. 环境搭建

  • 早早就收到了试用开发板,但当时初次上手没跑起来就暂时搁置了
    ,最近有空就重新跑一次,记录整体使用流程以及过程中遇到的坑。
  • 习惯了用ubuntu,且ubuntu已经配置好linux开发环境,就直接在其上进行开发。

开发环境:VMware虚拟机 + ubuntu18.04

由于本人略显强迫症,故将repo,llvm文件合并至tools文件夹下(懒得修改工程里的tools路径),
故该处指令与教程略有不同

开发工具用途获取途径
必要的库和工具编译所需的必要工具和库(如打包、镜像制作等)命令行安装
Python3.8编译构建工具命令行安装
LLVM(仅OpenHarmony_v1.x分支/标签需要)编译工具链网络下载
hbOpenHarmony编译构建命令行工具命令行安装
源码功能开发命令行拉取

1.1 安装必要的库和工具

使用如下apt-get指令安装编译所需的库和基础工具

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 gcc-arm-linux-gnueabi cpio device-tree-compiler

1.2 安装Python3

  1. 先查看当前python版本是否符合要求
adrves@ubuntu:~$ python --version
Python 3.6.0
  1. 当前python版本不符合要求,升级安装python3.8
sudo apt-get install python3.8
  1. 设置python和python3软链接为python3.8。
    令python指向python3 python3 指向python3.8
sudo update-alternatives --install /usr/bin/python python /usr/bin/python3 1
sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.8 1

1.2.1 翻车现场

现象描述: ubuntu18.04实测修改python软链接会造成终端无法被快捷键及桌面图标打开,但可以被桌面右键打开。

问题原因: terminal在开发阶段使用的是自带的python3.6/3.5解释器,当升级到python3.8之后,其中的一些内建函数或者语法发生了变化,导致terminal打不开了,

解决办法: 通过查找资料发现共有两种解决方案,此处采用解决方案2。

解决方法一:更新终端

一般情况下可以通过

sudo apt-get install gnome-terminal

更新terminal来解决问题,有时候重新安装并没有解决问题,是因为当前Ubuntu版本对应的源里面没有更新版的terminal,可以使用修改解释器的方式临时解决

解决方法二:修改解释器

使用下述打开解释器文件,(良好习惯,修改前先备份

sudo cp /usr/bin/gnome-terminal /usr/bin/gnome-terminal.bakup

sudo vi /usr/bin/gnome-terminal

在文件第一行显示为

#! /usr/bin/python3

将其修改为

#! /usr/bin/python3.6

保存退出,重启以后就能终端使用正常

  1. 安装并升级Python包管理工具(pip3)
sudo apt-get install python3-setuptools python3-pip -y
sudo pip3 install --upgrade pip

1.3 安装LLVM(仅OpenHarmony_v1.x分支/标签需要)

  1. 下载LLVM工具
  2. 解压LLVM安装包至~/tools路径下。
tar -xvf llvm.tar -C ~/tools
  1. 设置环境变量
vim ~/.bashrc
  1. 拷贝环境变量到.bashrc文件的最后一行,保存并退出。
export PATH=~/tools/llvm/bin:$PATH
  1. 生效环境变量。
source ~/.bashrc

1.4 安装hb

前提条件

请先安装Python 3.7.4及以上版本,请见安装Python3。

安装方法

  1. 运行如下命令安装hb
python3 -m pip install --user ohos-build
  1. 设置环境变量
vim ~/.bashrc

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

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

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

source ~/.bashrc
  1. 执行"hb -h",有打印以下信息即表示安装成功:
usage: hb [-h] [-v] {build,set,env,clean,deps} ...OHOS Build System version 0.4.3positional arguments:{build,set,env,clean,deps}build               Build source codeset                 OHOS build settingsenv                 Show OHOS build envclean               Clean outputdeps                OHOS components depsoptional arguments:-h, --help            show this help message and exit-v, --version         show program's version number and exit

卸载方法(正常使用过程中无需卸载)

python3 -m pip uninstall ohos-build

提示:hb安装过程出现问题官方解决方法

2. 系统源码获取与编译

2.1 准备工作

OpenHarmony的代码托管在gitee,下载代码前必须在gitee注册账号并设置好公钥(点击学习设置公钥),否则会下载出错。

2.2 安装repo

  1. 创建repo安装目录。
wget https://storage.googleapis.com/git-repo-downloads/repo -P ~/tools/
  1. 改变执行权限
chmod a+x ~/tools/repo
  1. 改变环境变量,在~/.bashrc文件的最后输入
export PATH=~/tools:$PATH
export REPO_URL=https://mirrors.tuna.tsinghua.edu.cn/git/git-repo/
  1. 重启shell

2.3 下载系统

XR806_OpenHarmony开发板适配了OpenHarmony_1.0.1_release分支,以下步骤1,步骤2,步骤3选择其中一步进行。

  1. 下载指定分支的OpenHarmony,以OpenHarmony_1.0.1_release为例
repo init -u https://gitee.com/openharmony/manifest.git -b OpenHarmony_1.0.1_release --no-repo-verify
  1. 下载好仓库后,输入命令下载代码。
repo sync -c
  1. 下载好代码后,继续下载剩余的大容量二进制文件。
repo forall -c 'git lfs pull'

2.4 下载xr806源码

1.进入鸿蒙系统的/device文件夹

cd ~/xr806/device

git clone https://gitee.com/moldy-potato-chips/devboard_device_allwinner_xr806

cd …/ventor

git clone https://gitee.com/moldy-potato-chips/devboard_vendor_allwinner_xr806

下载完毕后按照教程目录结构修改文件夹名称使其路径保持一致

务必按照对应二级文件夹下载,否则后面会出现"找不到设备"现象

mv devboard_device_allwinner_xr806 xradio

mv vendor/devboard_device_allwinner_xr806 vendor/xradio

2.4.1 翻车现场

最开始路径未按照规定下载,结果造成一直发现不了xr设备,经查看linux下已发现USB设备,最后把代码仓库按照路径设置后,即可成功发现xr设备。

2.5 设置工程编译工具链

(由于本人安装路径就是~/tool,且编译链工具也和官方保持一致,故该小节无需设置,跳过即可)

  1. 下载编译链工具,(与官方保持一致)
  2. 修改device/xradio/xr806/liteos_m/config.gni中的board_toolchain_prefix为实际环境下的gcc路径。

board_toolchain_prefix = “~/tools/gcc-arm-none-eabi-10-2020-q4-major/bin/arm-none-eabi-”

  1. 修改device/xradio/xr806/xr_skylark/gcc.mk中的CC_DIR为实际环境下的gcc路径。

CC_DIR := ~/tools/gcc-arm-none-eabi-10-2020-q4-major/bin

2.6 工程配置

该步骤按照相关文档步骤执行即可

2.7 编译下载

该过程按照教程执行即可

至此,系统成功编译下载通过

这篇关于【xr806开发板试用】环境搭建及编译下载的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/822857

相关文章

一篇文章彻底搞懂macOS如何决定java环境

《一篇文章彻底搞懂macOS如何决定java环境》MacOS作为一个功能强大的操作系统,为开发者提供了丰富的开发工具和框架,下面:本文主要介绍macOS如何决定java环境的相关资料,文中通过代码... 目录方法一:使用 which命令方法二:使用 Java_home工具(Apple 官方推荐)那问题来了,

vite搭建vue3项目的搭建步骤

《vite搭建vue3项目的搭建步骤》本文主要介绍了vite搭建vue3项目的搭建步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学... 目录1.确保Nodejs环境2.使用vite-cli工具3.进入项目安装依赖1.确保Nodejs环境

Nginx搭建前端本地预览环境的完整步骤教学

《Nginx搭建前端本地预览环境的完整步骤教学》这篇文章主要为大家详细介绍了Nginx搭建前端本地预览环境的完整步骤教学,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录项目目录结构核心配置文件:nginx.conf脚本化操作:nginx.shnpm 脚本集成总结:对前端的意义很多

idea+spring boot创建项目的搭建全过程

《idea+springboot创建项目的搭建全过程》SpringBoot是Spring社区发布的一个开源项目,旨在帮助开发者快速并且更简单的构建项目,:本文主要介绍idea+springb... 目录一.idea四种搭建方式1.Javaidea命名规范2JavaWebTomcat的安装一.明确tomcat

k8s搭建nfs共享存储实践

《k8s搭建nfs共享存储实践》本文介绍NFS服务端搭建与客户端配置,涵盖安装工具、目录设置及服务启动,随后讲解K8S中NFS动态存储部署,包括创建命名空间、ServiceAccount、RBAC权限... 目录1. NFS搭建1.1 部署NFS服务端1.1.1 下载nfs-utils和rpcbind1.1

通过Docker容器部署Python环境的全流程

《通过Docker容器部署Python环境的全流程》在现代化开发流程中,Docker因其轻量化、环境隔离和跨平台一致性的特性,已成为部署Python应用的标准工具,本文将详细演示如何通过Docker容... 目录引言一、docker与python的协同优势二、核心步骤详解三、进阶配置技巧四、生产环境最佳实践

SpringBoot 多环境开发实战(从配置、管理与控制)

《SpringBoot多环境开发实战(从配置、管理与控制)》本文详解SpringBoot多环境配置,涵盖单文件YAML、多文件模式、MavenProfile分组及激活策略,通过优先级控制灵活切换环境... 目录一、多环境开发基础(单文件 YAML 版)(一)配置原理与优势(二)实操示例二、多环境开发多文件版

使用docker搭建嵌入式Linux开发环境

《使用docker搭建嵌入式Linux开发环境》本文主要介绍了使用docker搭建嵌入式Linux开发环境,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面... 目录1、前言2、安装docker3、编写容器管理脚本4、创建容器1、前言在日常开发全志、rk等不同

Linux搭建ftp服务器的步骤

《Linux搭建ftp服务器的步骤》本文给大家分享Linux搭建ftp服务器的步骤,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录ftp搭建1:下载vsftpd工具2:下载客户端工具3:进入配置文件目录vsftpd.conf配置文件4:

Python多线程实现大文件快速下载的代码实现

《Python多线程实现大文件快速下载的代码实现》在互联网时代,文件下载是日常操作之一,尤其是大文件,然而,网络条件不稳定或带宽有限时,下载速度会变得很慢,本文将介绍如何使用Python实现多线程下载... 目录引言一、多线程下载原理二、python实现多线程下载代码说明:三、实战案例四、注意事项五、总结引