翻到了几年前抽中的RDC-2022纪念版开发板,拿出来玩下。
环境:ubuntu22.04
SDK下载
-
注册全志开发者论坛会员,需要将会员等级升级到L2才能下载。
-
安装repo管理工具
bashsudo apt install repo -
更换repo镜像源
bashecho export REPO_URL='https://mirrors.bfsu.edu.cn/git/git-repo' >> ~/.bashrc source ~/.bashrc -
配置下git凭据缓存,这样在1个小时内不用重复输入账号密码了,否则后面下载SDK需要重复输入很多次账号密码。
bashgit config --global credential.helper 'cache --timeout=3600' -
下载步骤参考全志在线开源芯片 新 SDK 平台下载方法汇总
-
新建tina-d1-h目录,在目录内执行repo初始化,需要按照提示输入密码
bashrepo init -u https://sdk.aw-ol.com/git_repo/D1_Tina_Open/manifest.git -b master -m tina-d1-h.xml -
下载SDK
bashrepo sync -
创建开发环境分支
bashrepo start product-smartx-d1-h-tina-stable-v2.0 --all
-
SDK编译
由于SDK依赖库比较古早,官方好像是推荐使用ubuntu14开发,所以用docker拉取一个ubuntu14镜像进行编译。
-
下载ubuntu14镜像
bashsudo docker pull ubuntu:trusty -
在ubuntu14基础上构建编译环境,新建Dockerfile文件:
docker# 使用 ubuntu:trusty 作为基础镜像 FROM ubuntu:trusty ENV FORCE_UNSAFE_CONFIGURE=1 # 完全替换为阿里云源 RUN cp /etc/apt/sources.list /etc/apt/sources.list.bak && \ echo "deb http://mirrors.aliyun.com/ubuntu/ trusty main restricted universe multiverse" > /etc/apt/sources.list && \ echo "deb http://mirrors.aliyun.com/ubuntu/ trusty-security main restricted universe multiverse" >> /etc/apt/sources.list && \ echo "deb http://mirrors.aliyun.com/ubuntu/ trusty-updates main restricted universe multiverse" >> /etc/apt/sources.list && \ echo "deb http://mirrors.aliyun.com/ubuntu/ trusty-backports main restricted universe multiverse" >> /etc/apt/sources.list && \ echo "deb http://mirrors.aliyun.com/ubuntu/ trusty-proposed main restricted universe multiverse" >> /etc/apt/sources.list # 安装所需的包 RUN apt-get update && apt-get install -y \ build-essential \ subversion \ git-core \ libncurses5-dev \ zlib1g-dev \ gawk \ flex \ quilt \ libssl-dev \ xsltproc \ libxml-parser-perl \ mercurial \ bzr \ ecj \ cvs \ unzip \ lib32z1 \ lib32z1-dev \ lib32stdc++6 \ libstdc++6 \ libmpc-dev \ libgmp-dev \ bison \ wget \ busybox \ && apt-get clean \ && rm -rf /var/lib/apt/lists/* # 设置容器默认命令 CMD ["/bin/bash"] -
构建docker镜像
bashdocker build -f Dockerfile -t tina-build . -
构建容器,将对应的目录替换成实际上存放SDK代码的目录
bashdocker run -dit --name tina_build_d1s -v /home/zyx/d1s/tina-d1-h:/home/zyx/d1s/tina-d1-h -w /home/zyx/d1s/tina-d1-h tina-build:latest /bin/bash -
进入容器
bashdocker exec -it tina_build_d1s /bin/bash -
source环境变量
bashsource build/envsetup.sh -
选择配置,执行lunch,然后选择对应的配置
-
编译
bashmake -j$(nproc) -
打包
bashpack