【XR806开发板试用】踩坑deepin20,回归ubuntu,开发环境

首先,感谢给予XR806的试用机会。由于之前使用过deepin进行过开发,使用了很长的一段时间,印象还是不错的,所以,这次就想用deepin进行xr806的开发,但过于折腾。

sudo 安装

1. 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
2. sudo apt-get install git

3. sudo apt-get install libncurses5-dev
4. sudo apt install software-properties-common
5. sudo apt-get install python3-setuptools python3-pip -y
6. sudo pip3 install --upgrade pip
7. sudo apt install python3-pip

源码下载

看过一些其他的网友的一些环境配置的帖子,很多都下载了openharmony的源码,而且这个源码有近9G的大小,下载又比较慢,但最后确定,这是不必要有。即openharmony的完整源码是不必下载的。

官方下载使用的是repo,对于没有repo的网友,可以进行安装,按官方的方式是可以的,我这里的方式如下:

mkdir tools 
cd tools
git clone https://gerrit-googlesource.lug.ustc.edu.cn/git-repo
chmod a+x git-repo/

在~/.profile中添加环境变量,设置repo路径与清华源

export PATH=~/tools/git-repo:$PATH

export REPO_URL=https://mirrors.tuna.tsinghua.edu.cn/git/git-repo/
source ~/.profile

通过repo + ssh 下载(需注册公钥):SSH 公钥设置 - Gitee.com

虽然下载openharmony源码并不是必要的,也在这里列出了。

通过repo + ssh 下载

repo init -u git@gitee.com:openharmony/manifest.git -b master --no-repo-verify
repo sync -c
repo forall -c 'git lfs pull'

通过repo + https 下载

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

坑1、deepin下载时,会有如下的问题,

这里,要安装git-fls

sudo apt-get install git-lfs

坑2、channot checkout xxxxxx

sudo apt-get install libncurses5-dev

坑3、ppa的使用问题,各种could not find 问题。

Deepin/stable不适用这种三方ppa,由于deepin切换到了Debain的软件仓库,而不是ubuntu的仓库了,虽然是可以修改软件源来切换,但为了防止后面一些玄学问题,就放弃在deepin上进行xr806的开发了,还是老老实实的在ubuntu上吧.

相同的操作,在ubuntu20是,就没有问题。

由于下载源码时,正好原官方仓库不可用,就使用了临时的仓库。会有如下的问题,而且会卡在92%的进度上。

这里要停止一下,修改文件/xr806_openharmony/.repo/manifests/devboard_xr806.xml,删除35行与115行后,重新repo sync -c,之后是可以完成的,但是源码是不完整的。要进行如下操作,重新下载缺失的源码。

在~/xr806_openharmony/device/与~/xr806_openharmony/vendor/两个目录下,分别执行如下 命令

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

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

代码下载完成。

编译

安装hb

python3 -m pip install --user ohos-build
添加环境变量:export PATH=~/.local/bin:$PATH
source ~/.profile 

编译

官方的第二个命令有一个拼写错误,如下是正确。

cd device/xradio/xr806/xr_skylark 

(1)进入原生SDK目录

cp project/demo/audio_demo/gcc/*defconfig* .config 

(2)复制配置文件

make menuconfig 

(3)图形化界面配置

make build_clean  

(4)清除旧配置

make lib -j  

(5)根据配置生成静态库和全局头文件

cd -

(6)返回Harmony根目录

hb set  

(7)选择wifi_skylark

hb build -f 

固件在device/xradio/xr806/xr_skylark/out,名称为xr_system.img

XR806的固件烧录程序,在device/xradio/xr806/xr_skylark/tools中,是个exe的程序,要复制到windows下来。

固件烧写,参考如下:固件烧录 - XR806 (aw-ol.com)

升级完成

来来回回折腾了两天,终于算是把环境弄起来了,主要是deepin上耽误的时间比较多。

后记:

重新把deepin的环境又折腾了一遍,最后编译通过了,可能是前期折腾了太多,不小心修改了系统的一些配置,重新安装了deepin的虚拟机后,成功了。

相关推荐
萨格拉斯救世主27 分钟前
戴尔R930服务器增加 Intel X710-DA2双万兆光口含模块
运维·服务器
Jtti30 分钟前
Windows系统服务器怎么设置远程连接?详细步骤
运维·服务器·windows
TeYiToKu33 分钟前
笔记整理—linux驱动开发部分(9)framebuffer驱动框架
linux·c语言·arm开发·驱动开发·笔记·嵌入式硬件·arm
dsywws36 分钟前
Linux学习笔记之时间日期和查找和解压缩指令
linux·笔记·学习
yeyuningzi44 分钟前
Debian 12环境里部署nginx步骤记录
linux·运维·服务器
上辈子杀猪这辈子学IT1 小时前
【Zookeeper集群搭建】安装zookeeper、zookeeper集群配置、zookeeper启动与关闭、zookeeper的shell命令操作
linux·hadoop·zookeeper·centos·debian
minihuabei1 小时前
linux centos 安装redis
linux·redis·centos
EasyCVR1 小时前
萤石设备视频接入平台EasyCVR多品牌摄像机视频平台海康ehome平台(ISUP)接入EasyCVR不在线如何排查?
运维·服务器·网络·人工智能·ffmpeg·音视频
lldhsds2 小时前
书生大模型实战营第四期-入门岛-1. Linux前置基础
linux
wowocpp2 小时前
ubuntu 22.04 硬件配置 查看 显卡
linux·运维·ubuntu