我是靠谱客的博主 纯真钻石,这篇文章主要介绍海思Hi3516DV300开发环境搭建一(编译uboot和kernel)解压缩SDK包展开SDK包在linux上安装交叉编译器编译osdrv制作文件系统镜像最后所有需要的镜像如下,现在分享给大家,希望可以做个参考。

文章目录

  • 解压缩SDK包
  • 展开SDK包
  • 在linux上安装交叉编译器
  • 编译osdrv
    • 编译kernel
      • 打补丁
      • 编译
    • 编译uboot
  • 制作文件系统镜像
  • 最后所有需要的镜像如下

解压缩SDK包

在发布包 Hi3516C V500R001C01SPCxxx.rar 所在的目录中找到SDK的tgz包
在linux中使用命令:tar -zxf Hi3516CV500_SDK_Vx.x.x.x.tgz,解压缩该文件,可以得到一个
Hi3516CV500_SDK_Vx.x.x.x 目录

展开SDK包

执行 ./sdk.unpack

在linux上安装交叉编译器

在发布包 Hi3516C V500R001C01SPCxxx.rar 所在的目录中下载工具链文件。
安装交叉编译器需要有 sudo 权限或者 root 权限
解压 tar –xzf arm-himix200-linux.tgz
运行 chmod +x arm-himix200-linux.install
然后运行./arm-himix200-linux.install 即可。
执行 source /etc/profile 配置环境变量

执行arm-himix200-linux-gcc --version 出现以下结果则证明安装成功
在这里插入图片描述

编译osdrv

此目录下osdrv中的readme_cn写的很详细。但不建议使用第一种make all的方式,真的各种坑,各种血泪!!建议大家使用分开编译uboot,kernel

编译kernel

打补丁

复制代码
1
2
3
将下载的 linux-4.9.37.tar.gz 存放到 osdrv/opensource/kernel 目录中 进入 osdrv 的根目录,执行如下命令:
复制代码
1
2
3
4
5
6
7
8
9
cd opensource/kernel tar -zxf linux-4.9.37.tar.gz mv linux-4.9.37 linux-4.9.y cd linux-4.9.y patch -p1 < ../linux-4.9.37.patch cd ../ tar -czf linux-4.9.y.tgz linux-4.9.y cd ../../

编译

进入 osdrv/opensource/kernel/linux-4.9.y 目录
执行如下命令:

复制代码
1
2
cp arch/arm/configs/hi3519dv300_smp_defconfig .config

//建议到arch/arm/configs/目录看一下对应你的开发板的可选的配置文件

复制代码
1
2
3
4
5
6
7
source /etc/profile export LC_ALL=C sudo apt-get install u-boot-tools make ARCH=arm CROSS_COMPILE=arm-himix200-linux- menuconfig make ARCH=arm CROSS_COMPILE=arm-himix200-linux- uImage make ARCH=arm CROSS_COMPILE=arm-himix200-linux- modules //编译模块

生成的 uImage 在 linux-4.9.y/arch/arm/boot 目录下

编译uboot

  • 进入目录osdrv/opensource/uboot
  • 解压文件
复制代码
1
2
3
tar -xzf u-boot-2016.11.tgz cd u-boot-2016.11
  • 编译uboot
复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
source /etc/profile export LC_ALL=C cp configs/hi3516dv300_defconfig .config make ARCH=arm CROSS_COMPILE=arm-himix200-linux- menuconfig make ARCH=arm CROSS_COMPILE=arm-himix200-linux- cp ../../../tools/pc/uboot_tools/reg_info.bin .reg make ARCH=arm CROSS_COMPILE=arm-himix200-linux- u-boot-z.bin 如果没有reg_info.bin文件,则到uboot_tools目录下制作reg.bin,参考readme cd Hi3516CV500_SDK_V2.0.1.0/osdrv/tools/pc/uboot_tools/hiregbin-v5.0.1 chmod 777 hiregbin ./hiregbin ./Hi3516dv300.xlsm ./reg.bin 再回到 cd ../../../opensource/uboot执行 cp ../../../tools/pc/uboot_tools/reg.bin .reg make ARCH=arm CROSS_COMPILE=arm-himix200-linux- u-boot-z.bin

将生成可用的 u-boot-hi3516dv300.bin 镜像文件

制作文件系统镜像

参考osdrv目录下的readme

最后所有需要的镜像如下

看readme!
在这里插入图片描述

ps:期间你可能会碰到各种各种error,首先稳住心态,不要崩,慢慢解决。
第一原则是缺啥装啥,第二就是好好看出错目录下的readme,第三仔细在网上搜索资料

最后,从一个从未接触过嵌入式开发的小白废了一天劲摸索到这一步后,突然发现在海思给的SDK包中hi3516dv300_spi_smp_image_glibc文件夹下已经给出了所有制作好的镜像!!!
在这里插入图片描述

最后

以上就是纯真钻石最近收集整理的关于海思Hi3516DV300开发环境搭建一(编译uboot和kernel)解压缩SDK包展开SDK包在linux上安装交叉编译器编译osdrv制作文件系统镜像最后所有需要的镜像如下的全部内容,更多相关海思Hi3516DV300开发环境搭建一(编译uboot和kernel)解压缩SDK包展开SDK包在linux上安装交叉编译器编译osdrv制作文件系统镜像最后所有需要内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(66)

评论列表共有 0 条评论

立即
投稿
返回
顶部