【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的虚拟机后,成功了。

相关推荐
NiNg_1_23423 分钟前
使用Docker Compose一键部署
运维·docker·容器
萠哥啥都行28 分钟前
Linux安装Docker以及Docker入门操作
运维·docker·容器
王哲晓28 分钟前
Linux通过yum安装Docker
java·linux·docker
OkeyProxy31 分钟前
怎麼在Ubuntu上設置全局代理
ubuntu·代理模式·proxy模式·ip代理·海外ip代理
小江湖199434 分钟前
元数据保护者,Caesium压缩不丢重要信息
运维·学习·软件需求·改行学it
gopher951141 分钟前
linux驱动开发-中断子系统
linux·运维·驱动开发
码哝小鱼1 小时前
firewalld封禁IP或IP段
linux·网络
鼠鼠龙年发大财1 小时前
【x**3专享】安装SSH、XFTP、XShell、ARM Linux
linux·arm开发·ssh
nfgo1 小时前
快速体验Linux发行版:DistroSea详解与操作指南
linux·ubuntu·centos
吃面不喝汤662 小时前
如何配置和使用自己的私有 Docker Registry
运维·docker·容器