Hi3516开发笔记(八):Hi3516虚拟机交叉开发环境搭建之配置QtCreator开发交叉编译环境
上一篇:《Hi3516开发笔记(七):Hi3516虚拟机交叉开发环境搭建之交叉编译Qt》
下一篇:《Hi3516开发笔记(九):在QtCreator开发环境中引入海思sdk的bsp包,运行显示Qt界面》敬请期待…
前言
前面交叉编译好了qt,安装好了QtCreator,本篇与上一篇连接紧密,在上一篇的基础上,在QtCreator开发IDE中配置交叉编译环境。
配置海思交叉编译环境
步骤一:打开构建套

步骤二:添加QtVersion

步骤三:添加编译器
自动识别了,如下图:

步骤四:新建构建套

步骤五:使用Hi3516DV300构建套编译“Hello world”

步骤六:检查是否生成成功

步骤七:传入开发板
具体开发板的配置与sftp连接请参考博文《Hi3516开发笔记(二):Hi3516虚拟机基础环境搭建之串口调试、网络连接以及sftp文件传输》中的“与开发板使用sftp上传文件”。

步骤八:直接命令行运行

开机启动Qt应用
步骤一:了解自己所用系统的开机启动脚本
开启启动,请参考博文《Hi3516开发笔记(三):Hi3516虚拟机基础环境搭建之交叉编译环境境搭建以及开机启动脚本分析》中的启动脚本分析。
步骤二:寻找qt环境引入
Qt环境在提供的系统中已经引入了

步骤三:隐藏原先的启动应用
将/usr/script/hi3516dv300.sh中的启动qt程序的部分注视掉

步骤四:修改启动脚本
修改启动的路径名称

顺便将app改成全屏,如下图:

再次编译上传,并改为startApp名称,如下图:

步骤五:启动测试
开启启动失败,手动运行,发现如下:

环境变量一致,那就是参数的问题了,回到原先的,之前做过测试启动原先demo的命令行如下:

直接手动运行,如下图:

再次修改方式,如下图:

测试结果:

所以我们确认程序中的问题,其实这个问题是Hi开发特有的,那就是涉及到海思的的HiMPP多媒体框架了。
这部分需要我们自己初始化设置好海康的HiMPP,然后设置HiFB(),作为海思系统驱动适配开发了解HiMPP是必须的。
(HiFB:Hisilicon Framebuffer(以下简称 HiFB)用于管理叠加图形层,它不仅提供 LinuxFramebuffer 的基本功能,还在 Linux Framebuffer 的基础上增加层间 colorkey、层间 Alpha 等扩展功能。)
所以,启动是启动了,只是失败了,初始化HiMPP才能设置HiFB,初始化HiFB涉及到交叉编译环境引用HiSDK的头文件和库,在下一篇去深入了解。
步骤六:弄个不启动界面的Qt进行开机启动


交叉编译后上传至开发板,并重命名,如下图:

然后重启,如下图:

上一篇:《Hi3516开发笔记(七):Hi3516虚拟机交叉开发环境搭建之交叉编译Qt》
下一篇:《Hi3516开发笔记(九):在QtCreator开发环境中引入海思sdk的bsp包,运行显示Qt界面》敬请期待…
若该文为原创文章,转载请注明原文出处
本文章博客地址:https://hpzwl.blog.csdn.net/article/details/121706557
Hi3516开发笔记(八):Hi3516虚拟机交叉开发环境搭建之配置QtCreator开发交叉编译环境的更多相关文章
- Eclipse_luna_J2EE_For_JS+tomcat8.0环境搭建、配置、开发入门
一.所有需要的软件.插件等下载地址 J2SE的官方下载路径:http://www.oracle.com/technetwork/java/javase/downloads/index.html Ecl ...
- OsgEarth开发笔记(三):Osg3.6.3+OsgEarth3.1+vs2019x64开发环境搭建(下)
前言 上一篇编译了proj6.2.0.gdal3.2.1,本篇继续. OsgEarth编译过程简介 OsgEarth的编译,是基于Osg和OsgEarth结合在一起的,先要编译Osg,然后 ...
- OsgEarth开发笔记(一):Osg3.6.3+OsgEarth3.1+vs2019x64开发环境搭建(上)
前言 OSG研究之后,做地理GIS显示了地球:<项目实战:Qt+OSG教育学科工具之地理三维星球>,这一文章是基于OSG做的,而基于OsgEarth是可以进一步对地球进行深度操作,所以 ...
- 【转】android 最新 NDK r8 在window下开发环境搭建 安装配置与使用 详细图文讲解,完整实际配置过程记录(原创)
原文网址:http://www.cnblogs.com/zdz8207/archive/2012/11/27/android-ndk-install.html android 最新 NDK r8 在w ...
- android 最新 NDK r8 在window下开发环境搭建 安装配置与使用 详细图文讲解,完整实际配置过程记录(原创)
android 最新 NDK r8 在window下开发环境搭建 安装配置与使用 详细图文讲解,完整实际配置过程记录(原创) 一直想搞NDK开发却一直给其他事情耽搁了,参考了些网上的资料今天终于把 ...
- Android NDK r8 Cygwin CDT 在window下开发环境搭建 安装配置与使用 具体图文解说
版权声明:本博客全部文章均为原创.欢迎交流.欢迎转载:转载请勿篡改内容,而且注明出处,谢谢! https://blog.csdn.net/waldmer/article/details/3272500 ...
- STS开发环境搭建与配置
STS开发环境搭建与配置 (2012-04-11 07:24:51) 转载▼ 1. 环境准备 安装JDK.MAVEN 1.1. 下载 下载sprdfingsource-tool-su ...
- Hadoop学习笔记—22.Hadoop2.x环境搭建与配置
自从2015年花了2个多月时间把Hadoop1.x的学习教程学习了一遍,对Hadoop这个神奇的小象有了一个初步的了解,还对每次学习的内容进行了总结,也形成了我的一个博文系列<Hadoop学习笔 ...
- FFmpeg开发笔记(三):ffmpeg介绍、windows编译以及开发环境搭建
前言 本篇章是对之前windows环境的补充,之前windows的是无需进行编译的,此篇使用源码进行编译,版本就使用3.4.8. FFmpeg简介 FFmpeg是领先的多媒体框架,能够解码 ...
- PHP移动互联网开发笔记(1)——环境搭建及配置
开篇说明:记得我上大二的时候第一次听到PHP,当时只知道这是一个开发网站的语言,并没有深入学习,在学了Java Web开发和Android开发之后我对互联网的发展方向有了一个我自己的认识,现在我们不能 ...
随机推荐
- [转帖]jmeter_采样器sampler简介
1.取样器介绍 取样器是用来模拟用户操作的,向服务器发送请求以及接收服务器的响应数据. 取样器是在线程组内部的元件,也就是说取样器只能在线程组中添加. 取样器(Sampler)是性能测试中向服务器发送 ...
- [转帖]python字符串如何删除后几位
https://www.python51.com/jc/15070.html 1.首先在jupyter notebook中新建一个空白的python文件: 2.然后定义一个字符串,用字符串截取的方式打 ...
- [转帖]网络传输性能netperf测试方法和下载
简介 Netperf是一种网络性能的测试工具,主要针对基于TCP或UDP的传输.Netperf根据应用的不同,可以进行不同模式的网络性能测试,即批量数据传输(bulk data transfer)模式 ...
- [转帖]【JVM】JVM概述
1.JVM定义 JVM 是Java Virtual Machine(JVM )的缩写,Java虚拟机在执行字节码时,把字节码解释成具体平台上的机器指令进行执行,这样实现了Java"一次编译, ...
- [粘贴]环绕闸极不能让三星在3nm工艺领先台积电
环绕闸极不能让三星在3nm工艺领先台积电 http://www.pinlue.com/article/2019/08/1510/599507978757.html 转身遇见她 2019-08-15 收 ...
- js中的宏任务和微任务详细讲解
微任务有哪些 Promise await和async 宏任务有哪些 setTimeout setInterval DOM事件 AJAX请求 看下面的代码 <script> console. ...
- 获取文件的后缀名(转为数组) 字符串和变量的拼接 HTML中字符串和变量的拼接
1文件上传时,获取文件的后缀名### var cont="2010-23.23.xls" console.log(cont.split("."));//spli ...
- Docker 完整指南
欢迎来到 Docker 的完整指南!在这个教程中,我们将深入研究 Docker 的各种特性,从基础的容器操作到高级的网络配置和数据管理.让我们一步步地探索 Docker 的丰富功能. 1. 安装 Do ...
- HTML直接插入js、css
简单的小页面可以使用 代码量大的话还是建议引用代码 直接包裹起来 <style>这里添加css代码</style> 加入css标识 <style type="t ...
- 4.1 C++ STL 动态链表容器
List和SList都是C++ STL中的容器,都是基于双向链表实现的,可以存储可重复元素的特点.其中,List内部的节点结构包含两个指针一个指向前一个节点,一个指向后一个节点,而SList只有一个指 ...