当前位置: 首页 > news >正文

Docker搭建RK3568建模环境

推荐:Ubuntu 20.04 版本

Docker加速

# 编辑 Docker 配置文件
$ sudo vim /etc/docker/daemon.json# 加入以下配置项
{"registry-mirrors": ["https://dockerproxy.com","https://hub-mirror.c.163.com","https://mirror.baidubce.com","https://ccr.ccs.tencentyun.com"]
}# 重启docker
$ sudo service docker restart

Docker容器创建

# 拉取Ubuntu镜像
docker pull ubuntu:20.04# 关联源码目录并启动Docker,挂载使用绝对路径
cd ~/Source/04-RK3568/02-Projects/SDK_RK3568_Linux_ATK
sudo docker run -it  -v ${PWD}:${PWD} --name Ubuntu20_RK3568 ubuntu:20.04# 环境依赖
apt-get update
apt-get install -y curl python2.7 python-pyelftools git ssh make gcc libssl-dev liblz4-tool expect g++ patchelf chrpath gawk texinfo chrpath diffstat binfmt-support qemu-user-static live-build bison flex fakeroot cmake gcc-multilib g++-multilib unzip device-tree-compiler python3-pip libncurses-dev python3-pyelftools vim mtd-utils# Docker 补充
apt install -y bc# 检出
cd /home/gaoyang3513/Source/04-RK3568/02-Projects/SDK_RK3568_Linux_ATK
.repo/repo/repo sync -l -j10

Python版本切换

# 添加
update-alternatives --install /usr/bin/python python /usr/bin/python2 100
update-alternatives --install /usr/bin/python python /usr/bin/python3 150# 切换
sudo update-alternatives --config python

Repo工具

mkdir ~/bin
export PATH=~/bin:$PATH# 下载
curl https://mirrors.tuna.tsinghua.edu.cn/git/git-repo -o ~/bin/repo
chmod a+x ~/bin/repo

Git

git config --global user.name "gaoyang3513"
git config --global user.email "gaoyang3513@163.com"git config --global core.editor vim

开发

编译

./build.sh lunch# 目标
3. BoardConfig-rk3568-atk-evb1-ddr4-v10.mk

在编译根文件系统的过程中会通过网络下载很多的第三方库文件;首先,下载过程会占用很多时间导致编译时间拉长;其次,如果用户的网络环境不稳定或者第三方库文件的下载源发生变更,很容易导致下载失败,进而导致根文件系统编译出错;所以,为了加快根文件系统的编译过程、也为了降低编译根文件系统时出现问题的概率, 我们可以预先把编译根文件系统所需的第三方库文件拷贝到 SDK 中。

在容器外执行

sudo tar -xzf ../../01-Resource/Alientek_RK3568/Disk_B/02-ATK-DLRK3568_SDK/linux_sdk/dl.tgz -C ./buildroot/

编译

./build.sh all

问题

技巧

# 新开
sudo docker exec -it Ubuntu20_RK3568 /bin/bash
http://www.lryc.cn/news/158236.html

相关文章:

  • TCP/IP基础
  • redis问题:三种集群——主从、哨兵、cluster集群;16384槽等
  • 转 股票触发指定价格发送到 企业微信
  • Linux修复软RAID
  • 【嵌入式软件C编程】主函数free子函数malloc地址的两种方式以及注意事项
  • 金融工程学学习笔记第一章
  • CentOS 7 编译ZooKeeper C客户端
  • 【2023年数学建模国赛】A题解题思路
  • 人们对区块链的认识开始变得深入和完善,另一条新路径开始衍生
  • 关于Comparable、Comparator接口返回值决定顺序的问题
  • js 根据键判断值
  • 堆排序,以及大顶堆构造过程Java实现
  • 【C++】类的封装 ① ( 类和对象 | 面向对象三大特征 - 封装 继承 多态 | 类的封装引入 )
  • Docker原理详细剖析-Namespace
  • sql:SQL优化知识点记录(九)
  • 【PowerQuery】PowerQuery导入JSON数据
  • bootstrap 主题
  • FPGA 学习笔记:Vivado 工程管理技巧
  • Java低代码开发:jvs-list(列表引擎)功能(二)字段及样式配置
  • 【Java】线程都有哪几种状态
  • 为什么服务端会有那么多的 TimeWait ?
  • 任意文件读取及漏洞复现
  • 目前的一些关于机器学习的感悟
  • salesforce从sandbox部署到生产环境的自定义字段权限没有成功上载
  • 字节跳动推出AI对话工具“豆包”:免费用
  • 时序预测 | MATLAB实现TCN-LSTM时间卷积长短期记忆神经网络时间序列预测
  • 代码随想录训练营二刷第十五天 | 层序遍历10道 226.翻转二叉树 101.对称二叉树 2
  • nowcoder NC10 大数乘法
  • 非科班菜鸡算法学习记录 | 代码随想录算法训练营第58天|| 单调栈! 739. 每日温度 496.下一个更大元素 I
  • 【Luogu】 P5445 [APIO2019] 路灯