自闭 · 2021年12月31日

【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
    
  2. 当前python版本不符合要求,升级安装python3.8

    sudo apt-get install python3.8
  3. 设置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
  3. 设置环境变量

    vim ~/.bashrc
  4. 拷贝环境变量到.bashrc文件的最后一行,保存并退出。

    export PATH=~/tools/llvm/bin:$PATH
  5. 生效环境变量。

    source ~/.bashrc

1.4 安装hb

前提条件

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

安装方法

  1. 运行如下命令安装hb

    python3 -m pip install --user ohos-build
  2. 设置环境变量

    vim ~/.bashrc

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

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

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

    source ~/.bashrc
  3. 执行"hb -h",有打印以下信息即表示安装成功:

    usage: hb [-h] [-v] {build,set,env,clean,deps} ...
    
    OHOS Build System version 0.4.3
    
    positional arguments:
      {build,set,env,clean,deps}
     build               Build source code
     set                 OHOS build settings
     env                 Show OHOS build env
     clean               Clean output
     deps                OHOS components deps
    
    optional 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/
  2. 改变执行权限

    chmod a+x ~/tools/repo
  3. 改变环境变量,在~/.bashrc文件的最后输入

    export PATH=~/tools:$PATH
    export REPO_URL=https://mirrors.tuna.tsinghua.edu.cn/git/git-repo/
  4. 重启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
  2. 下载好仓库后,输入命令下载代码。

    repo sync -c
  3. 下载好代码后,继续下载剩余的大容量二进制文件。
repo forall -c 'git lfs pull'

2.4 下载xr806源码

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

cd ~/xr806/device

git clone https://gitee.com/moldy-potat...

cd ../ventor

git clone https://gitee.com/moldy-potat...

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

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

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-"
  3. 修改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 编译下载

该过程按照教程执行即可

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

推荐阅读
关注数
13823
内容数
139
全志XR806开发板相关的知识介绍以及应用专栏。
目录
极术微信服务号
关注极术微信号
实时接收点赞提醒和评论通知
安谋科技学堂公众号
关注安谋科技学堂
实时获取安谋科技及 Arm 教学资源
安谋科技招聘公众号
关注安谋科技招聘
实时获取安谋科技中国职位信息