作者

QQ群:852283276
微信:arm80x86
微信公众号:青儿创客基地
B站:主页 https://space.bilibili.com/208826118

参考

ReleaseDoc\zh\01.software\board\Hi3531DV100 SDK 安装以及升级使用说明.txt
ReleaseDoc\zh\01.software\board\Hi35xxVx00 U-boot 移植应用开发指南.pdf
ReleaseDoc\zh\01.software\board\Hi35xxVx00 Linux 开发环境用户指南.pdf
readme.cn
[海思]–Hi3516aMpp开发环境配置
海思3536:kernel编译和mpp_single编译过程报错及解决方法

安装SDK

将路径Hi3531DV100R001C01SPC040\software\board下的SDKHi3531DV100_SDK_V1.0.4.0.tgz拷贝到Linux下,运行命令,

$ tar -zxvf Hi3531DV100_SDK_V1.0.4.0.tgz
$ cd Hi3531DV100_SDK_V1.0.4.0
$ ./sdk.unpack

SDK目录结构介绍,

 |--Hi3531D V100R001C0xSPC0xx_SDK.rar|   |--01.software|     |--board|           |--Hi3531D_SDK_Vx.x.x.x     |               |-- sdk.cleanup                 # SDK清理脚本|              |-- sdk.unpack                  # SDK展开脚本|              |-- osdrv                       # 存放操作系统及相关驱动的目录|               |   |-- opensource              # opensource源代码|                |   |   |-- busybox             # busybox源代码|               |   |   |-- kernel              # linux内核补丁文件|              |   |   |-- uboot               # uboot源代码|             |   |-- pub                     # 编译好的镜像、工具、drv驱动等|             |   |-- tools                   # linux工具源代码|               |   |-- readme_cn.txt           # osdrv使用说明(中文版)|             |   |-- readme_en.txt           # osdrv使用说明(英文版)|             |   |-- ......                  #|              |   `-- Makefile                # osdrv Makefile|              |-- package                     # 存放SDK各种压缩包的目录|                |   |-- osdrv.tgz               # linux内核/uboot/rootfs/tools源码压缩包|              |   |-- mpp.tgz                 # 媒体处理平台软件压缩包|              |   |-- drv.tgz                 # drv压缩包|               |   |-- osal.tgz                # osal压缩包   |               |   |-- rootfs_*.tgz            # rootfs压缩包|                |   |-- image *                 # 可供FLASH烧写的映像文件,如内核、根文件系统|              |-- scripts                     # 存放shell脚本的目录|             |-- drv                         # drv目录|                |-- osal                        # osal目录|               |    |-- include                # 存放操作系统适配层的头文件的目录|             |    |-- source                 # 存放操作系统适配层的源文件的目录|             |-- mpp                         # 存放媒体处理平台的目录|                  |-- component               # 组件源代码 |                   |-- extdrv                  # 板级外围驱动源代码|                    |-- include                 # 对外头文件|                    |-- ko                      # 内核模块|                 |-- lib                     # release版本库以及音频库|                  |-- linux.param         # linux相关的全局编译选项 |                  |-- Makefile.param          # mpp一些全局编译选项 |                 |-- tools                   # 媒体处理相关工具|                 `-- sample                  # 样例源代码|       |--arm-hisiv500-linux.tgz           # uclibc交叉编译器压缩包|--arm-hisiv600-linux.tgz           # glibc交叉编译器压缩包

安装交叉编译工具链

工具链有两种,目前采用uclibc版本的,比较小,百度网盘下载比较快,

  • arm-hisiv500-linux.tgz对应uclibc
  • arm-hisiv600-linux.tgz对应glibc

运行命令,

$ tar -zxvf arm-hisiv500-linux.tgz
$ gedit arm-hisiv500-linux.install
TOP_DIR=/etc/hisi-linux/x86-arm -> TOP_DIR=/home/qe/program/Hisilicon/hisi-linux/x86-arm
$ ./arm-hisiv500-linux.install
sorry, you must have super privilege!
1) I have root passwd     3) Try again          5) Aboart
2) I have sudo privilege  4) Ignore
#? 2
[sudo] password for qe:
$ cat /etc/profile
...
# Wed Dec 25 18:02:12 PST 2019
# Hisilicon Linux, Cross-Toolchain PATH
export PATH="/home/qe/program/Hisilicon/hisi-linux/x86-arm/arm-hisiv500-linux/target/bin:$PATH"
#

readme.cn,编译sdk,

make OSDRV_CROSS=arm-hisiv600-linux PCI_MODE=master FLASH_TYPE=nand all

编译u-boot

注意xx表示3531d,搞了半天,

$ make ARCH=arm CROSS_COMPILE=arm-hisiv500-linux- hi3531d_nand_config
$ make ARCH=arm CROSS_COMPILE=arm-hisiv500-linux-

首先用excel制作reg info文件,然后更新生成烧录的boot镜像u-boot.bin

$ cd Hi3531DV100_SDK_V1.0.4.0/osdrv/tools/pc/uboot_tools/
$ cp osdrv/opensource/uboot/u-boot-2010.06/u-boot.bin .
$ ./mkboot.sh reg_info_hi3531d.bin u-boot.bin

编译env tools时注释掉,

Hi3531DV100_SDK_V1.0.4.0/osdrv/opensource/uboot/u-boot-2010.06/include/linux/types.h:154:36: error: conflicting types for ‘uintmax_t’typedef u_int32_t                  uintmax_t;

编译内核

$ cd Hi3531DV100_SDK_V1.0.4.0/osdrv/opensource/kernel/linux-3.18.20
$ patch -p1 < ../hi3531dv100_for_linux_v3.18.y.patch
$ make ARCH=arm hi3531d_nand_defconfig
$ make ARCH=arm CROSS_COMPILE=arm-hisiv500-linux- menuconfig
$ make ARCH=arm CROSS_COMPILE=arm-hisiv500-linux- -j4
$ ls -l arch/arm/boot/
total 13308
drwxrwxr-x 2 qe qe    4096 Aug  7  2015 bootp
drwxrwxr-x 2 qe qe    4096 Dec 25 22:52 compressed
drwxrwxr-x 3 qe qe   36864 Dec 25 22:56 dts
-rwxrwxr-x 1 qe qe 6715424 Dec 25 22:52 Image
-rw-rw-r-- 1 qe qe    1648 Aug  7  2015 install.sh
-rw-rw-r-- 1 qe qe    3587 Dec 25 19:15 Makefile
-rwxrwxr-x 1 qe qe 3422352 Dec 25 22:52 zImage
-rw-rw-r-- 1 qe qe 3435538 Dec 25 22:52 zImage-dtb

编译mpp

遇到一些错误,待定位

$ cd mpp/
# export LIBC?=glibc
$ cd sample/
$ make
$ cd tools/
$ make
$ cd component/hdmi/sample/
$ make
$ cd component/pci/
$ make
# WARNING: "osal_remove_proc_entry" [/home/qe/program/Hisilicon/Hi3531DV100_SDK_V1.0.4.0/mpp/component/pci/pciv/kernel/hi3531d_pciv.ko] undefined!
# WARNING: "PCIV_FirmWareGetPreProcCfg" [/home/qe/program/Hisilicon/Hi3531DV100_SDK_V1.0.4.0/mpp/component/pci/pciv/kernel/hi3531d_pciv.ko] undefined!
# WARNING: "hios_mcc_setopt" [/home/qe/program/Hisilicon/Hi3531DV100_SDK_V1.0.4.0/mpp/component/pci/pciv/kernel/hi3531d_pciv.ko] undefined!
# WARNING: "osal_printk" [/home/qe/program/Hisilicon/Hi3531DV100_SDK_V1.0.4.0/mpp/component/pci/pciv/kernel/hi3531d_pciv.ko] undefined!
...
$ cd extdrv/
$ make
$ cd osal/source/kernel/
$ make

巨魔总结

我们遇到什么困难都不要怕,微笑着面对,战胜困难的唯一方法就是面对,奥利给!,欢迎加入巨魔的QQ群852283276

海思Hi3531DV100开发环境搭建相关推荐

  1. (1)海思Hi3531DV100开发环境搭建

    海思Hi3531DV100开发环境搭建(1) (本方案在linkpi开发板Hi3531Dv100上测试) 一 安装SDK 1.Hi3531DV100 SDK包位置 在"Hi3531DV100 ...

  2. 海思[hi3531]编译环境搭建(针对用于编译程序不制作内核和系统的开发者)

    海思3531软件环境搭建 确保Ubuntu能连网,把环境配置好安装以下软件 解压SDK压缩包(SDK可以找我拿Q:812417530) 解压工具链(可找我拿Q:812417530) 关于配置环境变量的 ...

  3. 华为海思芯片SDK----- LINUX环境搭建

    华为海思芯片SDK----- LINUX环境搭建 一.安装交叉编译器:hcc_riscv32.tar.gz 解压压缩包:tar zxvf hcc_riscv32.tar.gz 新建一个文件夹:mkdi ...

  4. 研发日记——海思HI3519A芯片环境搭建

    [1]SDK安装 1.1 Hi3519AV100 SDK 包位置 在"Hi3519AV100***/01.software/board"目录下,可以看到一个Hi3519AV100_ ...

  5. 老是说我编译版本不够_海思3518E编译环境搭建

    一.系统准备 1. Hi3518e的SDK 2. Ubuntu安装文件,这次安装的版本是20.04 3. Vmware虚拟机,也可以直接安装一台编译服务器,这次安装的是虚拟机 4. 安装虚拟机的时候, ...

  6. 海思(三)Taurus的开发环境搭建

    之前写的那篇没有及时发布 结果丢了 (重新开一篇) 下面是Taurus的开发环境搭建步骤 1.导入OpenHarmony源码 1.打开DevEco Device Tool,进入Home页,点击Impo ...

  7. 【海思AI芯片Hi3559A】学习笔记(1):开发环境搭建、安装SDK

    芯片资料见Hi3559A的资料包 主要参考文档:ReleaseDoc\zh\01.software\board\Hi3559A╱C V100 SDK 安装及升级使用说明.pdf 注意所有解压操作均要在 ...

  8. 极海APM微控制器基于IAR开发环境搭建与工程调试配置方法

    极海APM微控制器基于IAR开发环境搭建与工程调试配置方法 ✨本篇主要针对基于IAR for ARM版本:V9.30.1环境搭建和工程调试配置过程进行介绍,当然也同样适用于基于ARM架构芯片的开发使用 ...

  9. Hi3519V101开发环境搭建(二)

    目录 目录 前言 编译U-boot 编译Linux-318y的内核 链接地址 前言 前面已经搭建好了Ubuntu下的海思开发环境,现在对编译Uboot和Kernel的过程做一个简单的记录.参考文档&l ...

  10. Hi3519V101开发环境搭建(一)

    Hi3519V101开发环境搭建(一) 摘要:引言目前接触的项目使用海思平台.这里记录下海思3519的开发环境的搭建过程,感觉每次搭建都要参考<Hi3519V101Linux开发环境用户指南.p ...

最新文章

  1. jq处理 php数组,jQuery数组处理方法汇总_jquery
  2. 好玩的python代码示例-这可能是最好玩的python GUI入门实例!
  3. 20155308 《信息安全系统设计基础》课程总结
  4. 手机zip模拟器_【教程】萌新手机krkr2模拟器运行教程
  5. HTML5中Web Worker技术的使用实例
  6. VMware的屏幕太小
  7. 云计算:21世纪的商业平台
  8. android连mysql注册界面代码_Android实现注册登录界面的实例代码
  9. Android快速开发框架ZBLibrary源码分享
  10. 可爱的HOOk技术(一)
  11. 谈嵌入式软件分层设计
  12. 怎样从下载的MP4视频中将音乐提取出来?
  13. Flutter的原理及美团的实践(下,100%好评
  14. OFFICE 您正试图运行的函数包含有宏或需要宏语言的解决方法
  15. Centos7安装Nginx监控组件Nginx-rrd【二】
  16. ORACLE ora-01502 索引失效
  17. 毕业了,让我们唱起这十首歌!
  18. linux当中shadow文件的作用,解释Linux中passwd与shadow文件
  19. python练习——恺撒密码 I
  20. 【实战】“TED”演讲——可视化分析

热门文章

  1. Java十二平均律判断
  2. apk一般放服务器哪个位置,apk放在服务器
  3. Cocos Create 3.3 打包安卓apk
  4. Android之JNI① AS3.0以下DNK下载配置和第一个JNI程序
  5. GIS数据网站分享(长期更新)
  6. oracle如何修改redo,修改oracle redo
  7. 计算机桌面图标有哪两类,电脑桌面图标箭头,电脑桌面图标有两个箭头
  8. 代码大全(第2版)_2021【公式大全3.0版】【(数一)第371页】【(数二)第283页】【(数三)第324页】【有关矩阵秩的重要结论】6)~...
  9. 基于[三星6818]芯片超声波测距驱动编写
  10. 李开复给中国学生的4封信