hi3518e开发环境搭建

1.环境说明

  • 操作系统:UbuntuServer 18.04
  • 海思SDK:Hi3518E_SDK_V1.0.3.0.tgz
  • 硬件:hi3518e

2.安装依赖软件

$ sudo apt update
$ sudo apt upgrade -y
$ sudo apt install -y bzip2 lib32z1-dev lib32stdc++6 lrzsz make \
u-boot-tools wget uuid-dev libncurses5-dev \
g++ gcc zlib1g-dev

3.修改sh

ubuntu默认使用的sh是指向dash的,而海思的sdk包中的脚本需要bash

$ ls -l /bin/sh
lrwxrwxrwx 1 root root 4 Feb 14 09:49 /bin/sh -> dash

$ sudo rm -f /bin/sh
$ sudo ln -s /bin/bash /bin/sh

$ ls -l /bin/sh
lrwxrwxrwx 1 root root 9 Jul  9 03:45 /bin/sh -> /bin/bash

4.SDK部署

4.1.解压SDK

$ tar -zxvf Hi3518E_SDK_V1.0.3.0.tgz
$ cd Hi3518E_SDK_V1.0.3.0/
$ ./sdk.unpack

4.2.安装交叉编译工具链

$ cd osdrv/opensource/toolchain/arm-hisiv300-linux/
$ sudo ./cross.install.v300
$ source /etc/profile

4.2.1.测试

如果安装完成,执行下列操作可以正常显示gcc的版本信息

$ arm-hisiv300-linux-gcc -v

4.3.更新mtd-utils

SDK中自带的mtd-utils软件包是1.5.0版本,在高版本ubuntu中不匹配,需要更新到1.5.2版本

4.3.1.获取mtd-utils_1.5.2

$ cd osdrv/tools/pc/jffs2_tool/
$ wget http://nl.archive.ubuntu.com/ubuntu/pool/universe/m/mtd-utils/mtd-utils_1.5.2.orig.tar.bz2
$ mv mtd-utils_1.5.2.orig.tar.bz2 mtd-utils-1.5.2.tar.bz2

4.3.2.修改Makefile中指定的源码包

# 原始内容
MTD_UTILS      := mtd-utils-1.5.0

# 修改之后的内容
MTD_UTILS      := mtd-utils-1.5.2

5.编译

工作目录:

$cd Hi3518E_SDK_V1.0.3.0/osdrv 

编译生成目录

  • Hi3518E_SDK_V1.0.3.0/osdrv/pub/image_uclibc:烧录用的镜像

    • 镜像说明

      Hi3518E_SDK_V1.0.3.0/osdrv/pub/image_uclibc$ tree
      .
      ├── rootfs_hi3518ev200_128k.jffs2
      ├── rootfs_hi3518ev200_256k.jffs2
      ├── rootfs_hi3518ev200_2k_128k_32M.img
      ├── rootfs_hi3518ev200_2k_4bit.yaffs2
      ├── rootfs_hi3518ev200_32M.ext4
      ├── rootfs_hi3518ev200_64k.jffs2
      ├── u-boot-hi3518ev200.bin
      └── uImage_hi3518ev200
      
    • rootfs_hi3518ev200_xxx: 烧录用的根文件系统镜像

    • u-boot-hi3518ev200.bin:uboot镜像

    • uImage_hi3518ev200:kernel镜像

  • Hi3518E_SDK_V1.0.3.0/osdrv/pub/rootfs_uclibc.tgz:根文件系统

5.1.编译

5.1.1.编译所有(uboot、kernel、rootfs)

make OSDRV_CROSS=arm-hisiv300-linux CHIP=hi3518ev200 all

5.1.2.单独编译kernel

cp arch/arm/configs/hi3518ev200_full_defconfig  .config
make ARCH=arm CROSS_COMPILE=arm-hisiv300-linux- menuconfig
make ARCH=arm CROSS_COMPILE=arm-hisiv300-linux- uImage

5.1.3.单独编译module

cp arch/arm/configs/hi3518ev200_full_defconfig  .config
make ARCH=arm CROSS_COMPILE=arm-hisiv300-linux- menuconfig
make ARCH=arm CROSS_COMPILE=arm-hisiv300-linux- modules

5.1.4.单独编译uboot

make ARCH=arm CROSS_COMPILE=arm-hisiv300-linux- hi3518ev200_config  
make ARCH=arm CROSS_COMPILE=arm-hisiv300-linux-

5.1.5.构建可执行uboot

  1. 将生成的u-boot.bin复制到osdrv/tools/pc/uboot_tools/目录下,

  2. 运行./mkboot.sh reg_info.bin u-boot-ok.bin

  3. 生成的u-boot-ok.bin即为可用的u-boot镜像

5.2.清除

5.2.1.clean

清除整个osdrv目录的编译文件:

make OSDRV_CROSS=arm-hisiv300-linux CHIP=hi3518ev200 clean

5.2.2.distclean

彻底清除整个osdrv目录的编译文件,除清除编译文件外,还删除已编译好的镜像:

make OSDRV_CROSS=arm-hisiv300-linux CHIP=hi3518ev200 distclean
  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值