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

hi3519dv500开发环境搭建及SDK编译和烧录:

hi3519dv500开发环境搭建及SDK编译和烧录:

开发环境:鸿鸥派
在这里插入图片描述

按照常规操作安装一个ubuntu22.04虚拟机,这里不过多赘述;
在这里插入图片描述

第0步:配置基础开发环境:

更换软件源:

sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak
sudo nano /etc/apt/sources.list

用国内的镜像源来替代默认的官方源,以加快软件包的下载速度:
阿里云源:

deb http://mirrors.aliyun.com/ubuntu/ jammy main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ jammy-updates main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ jammy-backports main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ jammy-security main restricted universe multiverse

更新本地软件包列表及升级已安装的软件包:

sudo apt update
sudo apt upgrade -y

安装网络工具及ssh服务器,便于使用其他终端访问:

sudo apt-get install vim
sudo apt install net-tools
sudo apt install openssh-server -y

接下来就可以正式安装编译sdk所需要的环境了:
安装一系列工具:

sudo apt-get install unrar make cmake libc6-i386 lib32z1 lib32stdc++6 libncurses5-dev ncurses-term libncursesw5-dev g++ u-boot-tools texinfo gawk libssl-dev openssl bc p7zip-full gperf bison flex diffutils git unzip libffi-dev libtool libfreetype6 fakeroot autopoint po4a -ysudo apt-get install zlib1g-dev liblzo2-dev uuid-dev pkg-config automake -ysudo apt-get install texlive -ysudo apt-get install -y python3-pip
pip3 install wheel pycryptodome pyelftools cryptography

拷贝sdk并解压缩:
Hi3519DV500R001C01SPC0XX\SMP_Linux_GCC_glibc\01.software\board\Hi3519DV500_SDK_ V2.0.2.0.tgz

tar -xvf Hi3519DV500_SDK_V2.0.2.0.tgz
cd Hi3519DV500_SDK_V2.0.2.0/
./sdk.unpack

安装完成后,通过脚本检测安装是否成功:

scripts/installed_package_check.sh

在这里插入图片描述

第二步:安装交叉编译工具:

tar -xvf gcc-20240819-aarch64-v01c01-linux-gnu.tgz
cd gcc-20240819-aarch64-v01c01-linux-gnu/
sudo ./install_gcc_toolchain.sh
source /etc/profile

其它工具链的安装和上面了类似。

第三步:编译sdk:(以适配后的SDK为例):

虚拟环境安装 Pip3相关的包:

#python相关的包
sudo apt install python3.12-venv
python3 -m venv hi3519
source hi3519/bin/activate
pip install wheel pycryptodome pyelftools cryptography编译之前,需激活python环境

如下:
在这里插入图片描述

make all

在这里插入图片描述

编译成功如下:

原厂sdk编译报错及解决方案:
报错及解决方案:
报错:
在这里插入图片描述
默认使用的是glibc,可在如下makefile当中进行修改:
在这里插入图片描述
在这里插入图片描述
解决缺少 shell 工具(pushd/popd):
在这里插入图片描述
缺少 shell 工具(pushd/popd)
确保 shell 使用 bash(修复 pushd/popd 错误)
Ubuntu 默认使用 dash 作为 /bin/sh,而 dash 不支持 pushd、popd。
修改默认 shell:

# 检查当前链接情况
ls -l /bin/sh# 如果显示 dash,则改为 bash
sudo dpkg-reconfigure dash
# 输入 "no" 来切换为 bash

解决 blkid 头文件报错问题:
在这里插入图片描述
在这里插入图片描述
单独编译:
编译boot:
编译kernel:
编译文件系统:

第四步:固件烧录:

介绍以网线和串口烧录:

接线如下:
在这里插入图片描述
以烧录适配后的固件为例:
打开烧录工具:
在这里插入图片描述
在这里插入图片描述
点击烧写:
然后按下开发板按键:
在这里插入图片描述
之后等待收录成功即可;
注意:开发板 和 电脑 网线相连的网口,需要配置在同一个网段。

http://www.dtcms.com/a/279602.html

相关文章:

  • Linux从零到一的学习
  • 【DOCKER】-6 docker的资源限制与监控
  • Datawhale AI夏令营——用户新增预测挑战赛
  • 营销创意可以从哪些角度挖掘?
  • HNSW(分层导航最小世界)算法:高维向量检索的导航革命
  • 龙虎榜——20250714
  • 手滑误操作? vue + Element UI 封装二次确认框 | 附源码
  • 基于SpringBoot+Vue的体育馆预约管理系统(支付宝沙盒支付、腾讯地图API、协同过滤算法、可视化配置、可视化预约)
  • JAVA并发——volatile关键字的作用是什么
  • 高并发点赞场景Synchronized、AtomicLong、LongAdder 和 LongAccumulator性能分析
  • Linux 系统管理基础教程
  • MyBatis 在执行 SQL 时找不到名为 name 的参数
  • PO类与分层架构
  • UI前端大数据可视化新实践:如何利用数据动画讲述数据背后的故事?
  • Redis高可用集群一主从复制概述
  • SSH 登录失败,封禁IP脚本
  • 理解Grafana中`X-Scope-OrgID`的作用与配置
  • JavaWeb与HTTP协议
  • 【FPGA】AXI总线协议
  • 李宏毅(deep-leraning)-四---梯度下降batch size
  • 品质童装好而不贵!百胜中台助力久岁伴稳步发展
  • 今日行情明日机会——20250714
  • openEuler系统串口文件手法压力测试及脚本使用说明
  • 破解 VMware 迁移难题:跨平台迁移常见问题及自动化解决方案
  • 我的第一个开源项目:SpringCloud电商前端Vue实战
  • AI驱动编程范式革命:传统开发与智能开发的全维度对比分析
  • 《解锁音频处理新姿势:探索Librosa的无限可能》
  • androidstudio 高低版本兼容
  • 量产技巧之RK3588 Android12默认移除导航栏状态栏​
  • imx6ull-系统移植篇5——U-Boot 顶层 Makefile 简析