海思Linux(二)-Hi3516CV610的开发-SDK环境搭建与初始编译

目  录

前  言

一、环境搭建

1.1 资料准备

1.2 配置默认使用bash

1.3 环境安装-安装软件包

1.4 创建/etc/ld.so.preload文件

1.5 安装SDK依赖包mtd-utils

1.6 安装texlive库

1.7 安装python等库

 2 安装交叉编译工具

2.1 使用MobaXterm上传压缩包

2.2 使用tar解压

2.3 安装交叉编译

3 安装SDK

3.1 上传SDK压缩包

3.2 使用tar指令进行解压

3.3 展开SDK包

3.4 下载kernel

3.5 下载下载 mtd-utils

4 BSP编译

5 总结


前  言

芯片选型:HI3516CV610

选择的开发板是:酷电科技馆的Hi3516CV610-MINI开发板

上一篇文章:海思Linux(一)-Hi3516CV610的开发-ubuntu22_04环境创建-CSDN博客

下一篇文章:无

说明:该系列文章为学习文章,为参考网上各路大神的开源文章,但是个人天资愚笨,踩了无数坑,然后制作了这些步骤,如有侵权,请联系本人删除。、

一、环境搭建

1.1 资料准备

我使用的是海思原厂的SDK,从网上获取的资料,有如下两个压缩包

1.2 配置默认使用bash

使用下面的指令

sudo dpkg-reconfigure dash

选择no

1.3 环境安装-安装软件包

使用下面的指令进行安装,注意,以下指令需要为一行,如果不是一行会出现报错,可以使用txt等把它拼接成一行

sudo apt-get install make 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 python3-pip wget libmpc-dev

安装全点Y

如上图,没有出现报错即安装成功

1.4 创建/etc/ld.so.preload文件

这个的目的是解决64bit linux server上某些第三方库编译失败的问题

1.执行下面的指令

sudo nano /etc/ld.so.preload

出现这个界面

直接Ctrl+x退出

2.执行下面的指令

echo "" | sudo tee /etc/ld.so.preload

执行效果:

3.执行下面的指令查询是否是空文件

cat /etc/ld.so.preload

执行效果

4.执行下面的指令让这个设定生效

sudo ldconfig

1.5 安装SDK依赖包mtd-utils

1.执行下面这个指令

sudo apt-get install zlib1g-dev liblzo2-dev uuid-dev pkg-config automake

2.添加环境变量

使用下面的指令

export PKG_CONFIG_PATH="$PKG_CONFIG_PATH:/usr/lib/x86_64-linux-gnu/
 pkgconfig"

3.执行指令让环境变量生效

source ~/.bashrc

4.验证安装是否成功

依次执行下面的指令

pkg-config --cflags --libs zlib
pkg-config --cflags --libs lzo2
pkg-config --cflags --libs uuid

验证成功的显示示例

1.6 安装texlive库

执行下面的指令

sudo apt-get install texlive

安装效果: 

 

1.7 安装python等库

1.安装vim编辑器

执行下面的指令

sudo apt-get install vim

执行效果:

2.安装wheel

执行下面的指令

sudo pip3 install wheel

这个说明虚拟机已经安装过了,如果是正在安装也是正常的 

3.安装pycryptodome

 执行下面的指令

sudo pip3 install pycryptodome

执行效果:

 4.安装pyelftools

执行下面的指令

 sudo pip3 install pyelftools

执行效果:

5.安装 cryptography

执行下面的指令

sudo pip3 install cryptography

执行效果:(说明前面也已经安装过了,出现其他的安装情况也是正常的)

6.构建软链接

执行下面的指令

sudo ln -s /usr/bin/python3 /usr/bin/python

执行效果:

 2 安装交叉编译工具

2.1 使用MobaXterm上传压缩包

上传对应的交叉编译环境包

上传完后:

2.2 使用tar解压

输入下面的指令

tar xf gcc-20240318-arm-v01c02-linux-musleabi.tgz

2.3 安装交叉编译

依次使用下面的指令

cd gcc-20240318-arm-v01c02-linux-musleabi/
sudo ./install_gcc_toolchain.sh
source /etc/profile

 执行效果:

 执行下面指令验证

arm-v01c02-linux-musleabi-gcc -v

验证效果:

给sudo配置环境变量

使用下面的指令

sudo visudo

然后在文件中填入下面的内容

(注意,用户名需要更改为自身用户名)

Defaults    env_keep += "PATH"
Defaults    secure_path = /usr/sbin:/usr/bin:/sbin:/bin:/home/spmwgj/gcc-20240318-arm-v01c02-linux-musleabi/arm-v01c02-linux-musleabi-gcc/bin

使用Ctrl+x退出

3 安装SDK

3.1 上传SDK压缩包

如2.1 一样上传对应的SDK压缩包

3.2 使用tar指令进行解压

使用下面的指令进行解压

tar -zxf Hi3516CV610_SDK_V1.0.1.0.tgz

3.3 展开SDK包

使用下面的指令

cd Hi3516CV610_SDK_V1.0.1.0/
sudo ./sdk.unpack

执行后效果示例: 

3.4 下载kernel

Index of /pub/linux/kernel/

下载Linux kernel

下载的版本为linux-5.10.221.tar.gz

并且使用MobaXterm上传到ubuntu

使用下面指令把这个压缩包移到对应路径

sduo mv linux-5.10.221.tar.gz Hi3516CV610_SDK_V1.0.1.0/open_source/linux/

对应的示例效果:

3.5 下载下载 mtd-utils

在下面的链接处下载对应的mtd-utils

https://infraroot.at/pub/mtd/mtd-utils-2.1.4.tar.bz2

并且使用MobaXterm上传到ubuntu

使用下面的指令移动该文件

sudo mv mtd-utils-2.1.4.tar.bz2 Hi3516CV610_SDK_V1.0.1.0/open_source/mtd-utils/

执行后对应的示例为:

4 BSP编译

使用下面的命令进去bsp目录

cd Hi3516CV610_SDK_V1.0.1.0/smp/a7_linux/source/bsp/

示例:

 使用下面的命令进行编译:

sudo make LIB_TYPE=musl CHIP=hi3516cv610 DEBUG=1 all

编译会比较久。

出现这样的即编译成功了

5 总结

我在使用的过程中也踩了很多坑,如果你模仿我的去制作环境,记得注意替换自己的路径。

评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

跳河轻生的鱼

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值