海思SDK 学习 :001-HI_SDK 的 安装
背景
保密。不管怎么样接触到了海思SDK的开发,作为一项比较常见的技术,我们开展有关地学习。
host平台 :Ubuntu 16.04
arm平台 : 3531d
arm-gcc :4.9.4
概况
海思给出的官方资料有:
| 文件名 | 解释 |
|---|---|
| Hi3531D_Vxxxxxx.rar | 包含了有关的SDK |
| ReleaseDoc.rar | 官方发布的中英文文档 |
| arm-hisiv500-linux.tgz | 开发用的工具链 |
安装
以下的操作在 Linux主机上进行。(本人这里是Ubuntu)
Hi3531D_Vxxxxxx.rar:解压SDK包、并展开包的内容
Hi3531D SDK包位置:在"Hi3531D Vxxxxxx/01.software/"目录下,有 Hi3531D_SDK_Vx.x.x.x.tgz 的文件,该文件就是Hi3531D的软件开发包。
tar -xf Hi*SDK*.tgz
cd Hi*SDK*
# 如果需要拷贝SDK包,请先运行source sdk.cleanup,收起SDK包的内容,拷贝到新的目录后再展开。
source sdk.unpack
SDK目录介绍
# schips @ ubuntu in Hi3531D_SDK [10:54:44]
$ tree -L 2
.
├── drv #平台驱动
│ ├── cipher
│ ├── hisi-irda
│ ├── rtc
│ ├── sys_config
│ └── wtdg
├── mpp # 存放媒体处理平台的目录
│ ├── component # 组件源代码
│ ├── extdrv # 板级外围驱动源代码
│ ├── include # 对外头文件
│ ├── ko # 内核模块
│ ├── lib # release版本库以及音频库
│ ├── linux.param
│ ├── Makefile.param
│ ├── sample # 样例源代码
│ └── tools # 媒体处理相关工具
├── osal
│ ├── include
│ └── source
├── osdrv # 存放操作系统及相关驱动的目录
│ ├── drv # drv源代码
│ ├── Makefile # osdrv Makefile
│ ├── opensource # 包含了 uboot、kernel、busybox等源码
│ ├── pub # 编译好的镜像、工具、drv驱动等(空的)
│ ├── readme_cn.txt
│ ├── readme_en.txt
│ ├── rootfs_scripts # rootfs源代码
│ └── tools # linux工具源代码
├── package # 存放SDK各种压缩包的目录
│ ├── drv.tgz # 平台驱动压缩包
│ ├── image_uclibc # 可供FLASH烧写的映像文件,如内核、根文件系统
│ ├── mpp.tgz # 媒体处理平台软件压缩包
│ ├── osal.tgz
│ ├── osdrv.tgz # linux内核/uboot/rootfs/tools源码压缩包
│ └── rootfs_uclibc.tgz
├── scripts # 存放shell脚本的目录
├── sdk.cleanup # SDK清理脚本
└── sdk.unpack # SDK展开脚本
arm-hisiv500-linux.tgz:安装交叉编译器到HOST
解压与自动安装
tar -xf arm-hisiv500-linux.tgz
cd arm-hisiv500-linux
# arm-hisiv500-linux.install 脚本中的 TOP_DIR 为安装工具链的位置,可以修改,一般默认即可
chmod +x arm-hisiv500-linux.install
sudo ./arm-hisiv500-linux.install
配置工具链到 PATH中
# 默认情况下的工具链配置路径
export PATH=$PATH:/opt/hisi-linux/x86-arm/arm-hisiv500-linux/target/bin
测试
$ arm-hisiv500-linux-gcc --version
arm-hisiv500-linux-gcc (Hisilicon_v500_20170922) 4.9.4 20150629 (prerelease)
Copyright (C) 2015 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
如果出现:
arm-hisiv500-linux-gcc: error while loading shared libraries: libstdc++.so.6: cannot open shared object file: No such file or directory
这是因为gcc太老的问题:解决办法:
sudo apt-get install lib32z1 lib32ncurses5 lib32stdc++6 -y
编译osdrv
osdrv ,具体参见osdrv目录下readme;这里给出自用的编译kernel 有关的脚本
- 配置:
make ARCH=arm CROSS_COMPILE=arm-hisiv500-linux- menuconfig - 清除:
make ARCH=arm CROSS_COMPILE=arm-hisiv500-linux- clean - 编译:
sudo PATH=$PATH:/opt/hisi-linux/x86-arm/arm-hisiv500-linux/target/bin make ARCH=arm CROSS_COMPILE=arm-hisiv500-linux- uImage -j4
海思SDK 学习 :001-HI_SDK 的 安装的更多相关文章
- Ubuntu安装海思SDK(转)
问题 海思SDK安装时,无法运行sdk.unpack 原因 BASH 和 DASH 的问题. Debian和Ubuntu中,/bin/sh默认已经指向dash,这是一个不同于bash的shell,它主 ...
- 海思SDK 与各芯片对照
本文链接:https://blog.csdn.net/liuxizhen2009/article/details/84261221 海思SDK不对外开放. 海思35系列sdk Hi3507 Hi3 ...
- 第2季:从官方例程深度学习海思SDK及API
2.1.官方mppsample的总体分析2.1.sample的整体架构(1)sample其实是很多个例程,所以有很多个main(2)每一个例程面向一个典型应用,common是通用性主体函数,我们只分析 ...
- 在海思hisiv100nptl平台上交叉编译并安装SRS
./configure --with-arm-ubuntu12 && make 须要安装: apt-get installgcc-arm-linux-gnueabi ,但hi3 ...
- 【待续】海思Hi3520A学习笔记
/********************************************************************* * By : ...
- 关于海思SDK在Ubuntu下安装错误问题
在Ubuntu下安装海思sdk时,直接运行安装脚本,会有如下提示: ./sdk.unpack ./sdk.unpack: 2: ./sdk.unpack: source: not found ./s ...
- 用VS2013+VELT-0.1.4进行海思平台 Linux内核 的开发
快乐虾 http://blog.csdn.net/lights_joy/(QQ群:Visual EmbedLinux Tools 375515651) 欢迎转载,但请保留作者信息 本文仅适用于vs20 ...
- 海思3559A QT 5.12移植(带webengine 和 opengl es)
海思SDK版本:Hi3559AV100_SDK_V2.0.1.0 编译器版本:aarch64-himix100-linux-gcc 6.3.0(这个版本有点小问题,使用前需要先清除本地化设置) $ e ...
- 【ARM-Linux开发】用VS2013+VELT-0.1.4进行海思平台 Linux内核 的开发
1.1 什么是VELT VELT的全称是Visual EmbedLinuxTools,它是一个与visual gdb类似的visual studio插件,用以辅助完成Linux开发.利用这个插件 ...
- 海思3516系列芯片SPI速率慢问题深入分析与优化(基于PL022 SPI 控制器)
海思3516系列芯片SPI速率慢问题深入分析与优化(基于PL022 SPI 控制器) 我在某个海思主控的项目中需要使用SPI接口来驱动一块液晶屏,液晶屏主控为 st7789,分辨率 240x240,图 ...
随机推荐
- Mybatis学习四(分页助手pagehelper)
Mybatis学习过程中有一个很重要的插件分页助手(pagehelper) 能够运用这个插件也非常简单 1.导入jar包 [jsqlparser-2.0.jar包] [点击下载https://gith ...
- 【经典爬虫案例】用Python爬取微博热搜榜!
目录 一.爬取目标 二.编写爬虫代码 2.1 前戏 2.2 获取cookie 2.3 请求页面 2.4 解析页面 2.5 转换热搜类别 2.6 保存结果 2.7 查看结果数据 三.获取完整源码 一.爬 ...
- Github Copilot绑定Jetbrains IDE无效的解决方案
在Github中进行教育认证后不会自动开通Copilot功能,因此,在进行了Github教育认证之后,在使用之前要进入Github Copilot官网开通Coplilot,如果忽略了这一点,绑定Jet ...
- java复制指定文件
package com.cn.file; import org.junit.Test; import java.io.FileInputStream; import java.io.FileNotFo ...
- 前端JavaScript开发风格规范
开发者需要建立和遵守的规范 大致可以划分成这几个方向: 开发流程规范 代码规范 git commit规范 项目文件结构规范 UI设计规范 1. 开发流程规范 这里可能有小伙伴有疑问了,开发流程规范不是 ...
- 用 C 语言开发一门编程语言 — 语法解析器
目录 文章目录 目录 前文列表 编程语言的本质 词法分析 语法分析 使用 MPC 解析器组合库 安装 快速入门 实现波兰表达式的语法解析 波兰表达式 正则表达式 代码实现 前文列表 <用 C 语 ...
- 腾讯、阿里、B站最新面经汇总,有的妥妥的凉经
除了BAT(没错我说的B是B站的B),还有网易.希音科技.美柚等中小厂的最新面经. 这次投稿的同学行文幽默风趣,处处透漏着不成功便搞笑的骚气. 祝他早日上岸,也欢迎大家在评论区讨论这些面试题,有哪些面 ...
- vue3.4中KeepAlive的一个bug
KeepAlive可以缓存组件,在不使用include时没有任何问题,可以正常缓存. 但是一旦使用了include,如果动态组件中没有导入ref函数,缓存功能就消失了 比如 editcom.vue & ...
- ESP8266资源整理
概述 整理下学习ESP8266期间有价值的资料 乐鑫官网文档中心 主要参考资料来源,一手资料最有价值,另外官网还有选型工具.产品对比等实用工具 https://www.espressif.com.cn ...
- 【知识点】深入浅出STL标准模板库
前几天谈论了许多关于数论和数据结构的东西,这些内容可能对初学者而言比较晦涩难懂(毕竟是属于初高等算法/数据结构的范畴了).今天打算来讲一些简单的内容 - STL 标准模板库. STL 标准模板库 C+ ...