QT4.8.5移植到HI3516平台平台

【海思篇】【Hi3516DV300】十一、qt5移植 移植qt 阅读详情

环境:UBUNTU 10.04LTS, GCC 4.4.1, uClibc, QT SDK 4.8.5

  1. 下载qt-everywhere-opensource-src-4.8.5.tar.gz, PC端和ARM端都是同一个文件,下载地址:http://download.qt-project.org/official_releases/qt/4.8/4.8.5/qt-everywhere-opensource-src-4.8.5.tar.gz

 

2、先编译PC端的,

1) 解压出来,重命名文件夹为: x86-qt-everywhere-opensource-src-4.8.5

2) 进入到x86-qt-everywhere-opensource-src-4.8.5目录

3) 配置:  ./configure

出现错误:

Basic XLib functionality test failed!

 You might need to modify the include and library search paths by editing

 QMAKE_INCDIR_X11 and QMAKE_LIBDIR_X11 in /home/cjh/qt/qt-everywhere-opensource-src-4.8.5/mkspecs/linux-g++.

安装libxtst-dev:apt-get install libxtst-dev

./configure

出现:Warning: -no-xrender will disable the QtWebkit module.

安装libxrender-dev:apt-get install libxrender-dev

./ configure

如需重新配置,To reconfigure, run 'make confclean' and 'configure'.

4) make,没出现什么问题,花了二三个小时完成。

5) sudo make install 默认装在:/usr/local/Trolltech/Qt-4.8.5

 

3、编译ARM端

1) 安装交叉编译器

    安装海思平台交叉编译器arm-hisiv100-linux

安装目录是/opt/hisi-linux/x86-arm/arm-hisiv100-linux

在/etc/profile文件中添加PATH

Export PATH="/opt/hisi-linux/x86-arm/arm-hisiv100-linux/target/bin:$PATH"  

确认编译器安装成功,arm-hisiv100-linux-gcc -v

    2) 从压缩包再解压出来,重命名文件夹为: arm-qt-everywhere-opensource-src-4.8.5。虽然与PC端是相同的代码,按理说在同一个文件夹用不同的配置也可以,但为了避免问题,还是另建一份新的档案。而且也可以同时make,节省时间。

3) 进入到arm-qt-everywhere-opensource-src-4.8.5目录

4) 设置交叉编译工具链,修改文件qmake.conf arm-qt-everywhere-opensource-src-4.8.5/mkspecs/linux-arm-gnueabi-g++ /qmake.conf,修改内容如下:  

# modifications to g++.conf

QMAKE_CC = arm-hisiv100-linux-gcc

QMAKE_CXX = arm-hisiv100-linux-g++

QMAKE_LINK = arm-hisiv100-linux-g++

QMAKE_LINK_SHLIB = arm-hisiv100-linux-g++

 

# modifications to linux.conf

QMAKE_AR = arm-hisiv100-linux-ar cqs

QMAKE_OBJCOPY = arm-hisiv100-linux-objcopy

QMAKE_STRIP = arm-hisiv100-linux-strip

 

    5) 配置:

./configure -opensource -embedded arm -host-little-endian -little-endian -static -no-cups -no-3dnow -no-script -no-webkit -no-javascript-jit -no-qt3support -nomake examples -nomake docs -xplatform /qws/mkspecs/linux-arm-gnueabi-g++

 

6) make ,耗时20-30分钟

出现错误:

qthread_unix.cpp:  undefined reference to `__tls_get_addr

修改src/corelib/thread目录下的qthread_unix.cpp文件, 关闭HAVE_TLS宏,再编译。

出现错误 

../3rdparty/javascriptcore/JavaScriptCore/runtime/Collector.cpp:662: error: 'pthread_getattr_np' was not declared in this scope

  pthread_getattr_np在uClibc中没有实现,不使用javascript, 暂时屏蔽了,如果用到javascript会有问题。

 

 

7) sudo make install, 安装在/usr/local/Trolltech/QtEmbedded-4.8.5-arm。如果需要安装在其他目录,./configure -prefix path指定

 

8) 修改环境变量,在~/.bashrc中添加以下语句

export ARMQTDIR=/usr/local/Trolltech/QtEmbedded-4.8.5-arm

export PATH=$ARMQTDIR/bin:$PATH

export LD_LIBRARY_PATH=$ARMQTDIR/lib

export QMAKESPEC=$ARMQTDIR /mkspecs/linux-arm-gnueabi-g++

重新加载~/.bashrc:

source ~/.bashrc

  检查是否成功:

      qmake -v

输出以下信息:

QMake version 2.01a

Using Qt version 4.8.5 in /usr/local/Trolltech/QtEmbedded-4.8.5-arm/lib

 

9) 例子程序测试

cd /examples/dialogs/standarddialogs

/usr/local/Trolltech/QtEmbedded-4.8.5-arm/bin/qmake -spec /usr/local/Trolltech/QtEmbedded-4.8.5-arm/mkspecs/linux-arm-gnueabi-g++/ -o Makefile standarddialogs.pro

make

arm-linux-strip standarddialogs

upx –qqq –v standarddialogs   //压缩

好了,standarddialogs可以放到目标板上去运行了。

4、安装Qt Creator

    qt-creator 2.8.1要求ubuntu 11.10 or later,所以装了2.7.2版本。

1) 运行安装程序 ./qt-creator-linux-x86-opensource-2.7.2.bin,按默认配置安装

2) 增加Compiler

指向交叉编译器的arm-hisiv100-linux-g++

QT4.8.5移植到HI3516平台

    3) 增加Qt versions,分别指向刚刚编译的二个平台的qmake。

 

    4) 增加Kits

PC版本的

QT4.8.5移植到HI3516平台

 

ARM版本的

QT4.8.5移植到HI3516平台

基于Hi3516AV200/Hi3519V101的Qt绘图优化 First of all,Qt5.X移植到海思平台以及linuxfb插件的修改可以参考https://www.cnblogs.com/chay/p/10431403.html一文,本文介绍的优化过程与之相似,只是结合了具体的项目进行了分析和改进。 ... 阅读详情

相关推荐

跨平台嵌入式WebRTC开发:metaRTC编译与优化实战

本文深入探讨了跨平台嵌入式WebRTC开发中的metaRTC编译与优化实战。通过分析嵌入式环境的架构多样性问题,介绍了metaRTC的架构抽象层设计及其在ARM、RISC-V等平台上的优异表现。文章详细讲解了qmake与cmake的编译环境搭建、第三方库的优化选型,以及内存占用和延迟优化的实用技巧,为开发者提供了一套完整的嵌入式WebRTC开发解决方案。

weixin_42522669的博客 252

Qt:CentOS下Qt4.8.5安装

下载 要下载的有两样东西。 (1)Qt Creator安装程序。 (2)Qt SDK。 QT SDK安装 必须按照Qt SDK 下载 qt-everywhere-opensource-src-4.8.5.tar.gz 解压 tar zxvf qt-everywhere-opensource-src-4.8.5.tar.gz 设备环境变量 解压完成之后,进入解压后的源码目录,执行以下命令: &gt...

OceanStar的博客 2501

hi3516dv500、hi3519dv500移植yolov7,yolov8 (9)

​。

多波段AI相机方案 1170

Linux的使用以及JDK、MySQL、Tomcat的安装

Linux的基本使用 1、Linux的基本的目录解析 sbin/bin:这两个目录的作用是存放了Linux下的常用的命名工具(可运行的文件) data:存放数据的 etc:存放的是整个Linux的配置文件(环境变量) lib/lib64:存放的是linux运行的时候需要依赖的库文件 mnt:进行文件的挂载的(比如U盘的挂载) tmp:存放临时文件的 var:这个目录页是村存放临时文件的 home:存放用户信息的 media:存放媒体资源文件的 root:存放 root最大的用户信息的 usr:安装文件的时候

weixin_46403305的博客 298

Hi3516 HDMI相机开发全栈解析:从MIPI信号到QT实时控制

嵌入式Linux视频系统开发以V4L2框架和硬件抽象为核心,其本质是软硬协同的实时数据流工程。理解MIPI-CSI信号完整性、设备树物理映射、V4L2与MPP双框架协同机制,是构建稳定HDMI视频输出的基础;而共享内存IPC、原子操作同步、GPIO中断与QT事件循环融合,则决定了上层应用的实时性与可靠性。在海思Hi3516等国产AI视觉平台中,这些能力已成工业相机、智能安防等场景的刚性门槛。本文聚焦真实项目闭环——从PCB级信号约束、U-Boot私有初始化、内核驱动时序依赖,到QT跨进程低延迟控制,系统拆解

weixin_32456485的博客 89

qt-everywhere-opensource-src-4.8.5.zip

qt4.8.5源码

从零开始移植QT4.8.5之三--linux下交叉编译QT运行库

这篇文章要实现的目标是在linux下交叉编译QT在嵌入式设备OK6410的运行库,最终在OK6410上运行QT演示程序。 1、触摸屏库文件安装tslib 首先如果嵌入式设备上有触摸屏,需要先移植tslib,这个不是本次的重点,所以我们就直接搭建编译的时候需要的tslib库,因为飞凌官方已经提供编译好了的库文件,所以之需要解压把库文件放到对应的位置就可以了。 编译好的tslib文件下载:htt

andylauren的专栏 9103

qt-everywhere-opensource-src-4.8.4.tar.gz

qt 4.8.4 源码, 如何编译,查看 linux上安装Qt4.8.4+QtCreator4.2.0 https://blog.csdn.net/linbounconstraint/article/details/113389978

【海思篇】【Hi3516DV300】十二、海思framebuffer的qt移植

1 建立海思fb工程 基于前面章节的 《qt移植》 步骤如下: cd /opt/qt-everywhere-src-5.12.8/qtbase/src/plugins/platforms cp linuxfb linuxfb_hi3516dv300 -rf cd linuxfb_hi3516dv300 vi linuxfb.pro #将第一句TARGET = qlinuxfb改为TARGET =...

cocoron的博客 7579

单细胞数据导入实战:Read10X函数常见报错与解决方案

本文针对单细胞转录组分析中Read10X函数数据导入的常见问题,提供了详细的实战解决方案。重点解析了因文件路径错误、压缩文件未解压、版本命名不符及内存不足导致的报错,并给出了检查路径、正确解压、重命名文件、调整参数及优化内存等具体操作步骤,帮助用户高效完成单细胞数据导入,为后续分析奠定坚实基础。

weixin_28235513的博客 238

一条龙开发指南:MCP AI Agent 理论+项目实战开发你的MCP Server

MCP(Model Connection Protocol)是Anthropic于2024年推出的AI模型连接协议,旨在为AI模型提供开放、通用的标准化接口,类似于“USB-C”接口,使AI模型能够无缝连接各种数据源和工具。MCP通过标准化协议解决了AI系统集成中的碎片化问题,提升了开发效率和系统可靠性。开发者可以通过简单的配置,快速接入不同的MCP Server,实现AI模型的多样化应用。MCP支持多种协议,如Stdio、SSE等,并通过JSON-RPC格式进行数据传输。文章还以腾讯云代码助手为例,展示了

杨不易呀 3045

海思Hi3516DV300 移植Qt 运行并在HDMI显示器上显示

海思Hi3516DV300 移植Qt 运行并在HDMI显示器上显示

weixin_49513223的博客 4098

模拟CMOS集成电路设计入门学习(1)

模拟CMOS集成电路设计入门学习(1):二级效应

qq_61052827的博客 3084

FFmpeg开发笔记(十):ffmpeg在ubuntu上的交叉编译移植到海思HI35xx平台

将ffmpeg移植到海思HI3559、Hi3516平台上,需要交叉编译。

长沙红胖子 Qt・西安|省级科研团队从业背景,深耕双一流体系高精尖技术配套研发|剥离高精尖机理,沉淀高端特种行业领域 Qt 工程化落地经验|博文仅分享通用技术总结,输出公开普适工程思路。 3万+

嵌入式存储进阶:除了KV存储,EasyFlash的IAP和LOG功能怎么玩?

本文深入探讨了嵌入式存储方案EasyFlash的高级功能,包括在线固件升级(IAP)和闪存日志存储(LOG)。通过详细解析IAP的双区备份设计和LOG的环形缓冲区架构,提供硬件适配、安全升级流程和日志管理技巧等实战指南,帮助开发者在物联网设备中实现可靠的数据存储和固件更新。

weixin_29280219的博客 413

Zemax 中的 LED 阵列模型

这些光线是所有光线的子集,用于布局可视化,而不是详细分析。X 和 Y 散度(αx 和 αy)以度为单位,以不同的方式设置为 6 度和 12 度。每个 LED 都以朗伯模式(广角分布)发光,尽管有些 LED 具有内置光学元件,用于更窄或更聚焦的光束。,具体取决于这些类别中使用的半导体材料。LED 阵列由多个发光二极管 (LED) 组成,这些二极管以特定模式或配置排列,以实现均匀照明、更高强度或特定照明特性。如果数据的存在更改为“辐射强度”,则它以弧度为单位显示每个立体角的功率,作为探测器上入射角的函数。

jkh920184196的博客 1595

qt5.9.6移植到haisi3519a平台

概述: qt移植到海思平台有二种做法,如下: 一:是直接修改qt的源码,让qt编译出来的linuxfb插件适配haisi平台。 二:qt源码不做修改,修改海思sdk中的hifb程序,让其适配qt程序。 个人认为第二种方法比较好,qt源码修改一次重新编译需要很久,但是修改hifb非常简单,而且容易修改。本文介绍的是第二种方法。 一:qt5.9.6源码交叉编译: 1.1下载源码 http://down...

u011509690的博客 1862

使用 MATLAB/Simulink 构建一个 压水堆核电机组的反应堆控制与功率调节系统 仿真模型

本文通过Simulink构建压水堆核电机组的反应堆控制与功率调节模型,详细介绍了建模流程:从中子点动力学核心方程、反应性反馈模型(控制棒、多普勒和慢化剂效应)、一回路热工模型到完整的闭环控制系统。教程包含系统结构设计、参数设置、模块连接方法,以及典型负荷变化场景的仿真分析,帮助读者理解核反应堆动态特性和控制原理。同时提供了进阶建模建议,如分布参数模型和先进控制策略的应用。该模型为教学简化版,强调核能系统的机理建模与Simulink实现方法,适合核工程与控制领域的学习者参考实践。

amy_mhd的博客 186

在HI3531上移植和运行QT4.8.6

http://lbc2100.blog.163.com/blog/static/1505536020149104565701/   在HI3531上移植和运行QT4.8.6 1、            前言: 近段有点时间,想把QT移植到HI3531上,在网上查找了很多资料,但都不是很全面,有些有问题也没有得到很好的体现。   2、            环境:

mengzhengjie的专栏 830

用AList挂载网盘,无损看VR电影教程,无需下载到PICO头显本地!

用AList挂载网盘 + WebDAV直连头显,看片像拉本地一样流畅,不怕卡顿、不怕没空间,简直是VR看片刚需配置!别再用U盘传电影了,用AList + WebDAV,直接流畅看4K,看片效率翻倍,体验提升一个档次!

代码简单说 Vue、JAVA、PHP、Node.js 熟练运用,接口、架构、性能全搞定。 5541

L2正则化与Ridge回归的关系

非常感谢您提供的详细任务描述和要求。我会尽力按照您的指引来撰写这篇技术博客文章。 L2正则化与Ridge回归的关系 1. 背景介绍 机器学习模型在训练过程中容易出现过拟合的问题,这会导致模型在训练集上表现很好但在测试集上泛化性能较差。为了解决这一问题,正则化技术应运而生。其中

AGI×大数据,开启智能时代的认知跃迁;解码AGI,赋能数据驱动的智能革命。 657

https://blog.csdn.net/cocoron/article/details/105664829

原文链接:添加链接描述 目的: : 由于海思在fb上又封装了一层自己的hifb,所以为了能正常使用qt,需在调用前初始化和配置好hifb;这里我们将hifb配置代码封装在linuxfb_hi3516dv300.so的插件中;绝大部分海思芯片通用; 部分lcd/mipi显示时,视频颜色正常的,但是qt程序的颜色不正常;这是因为图形层默认CSC转换矩阵为VO_CSC_MATRIX_RGB_TO_BT601_TV, 当设置RGB数据输出接口(如LCD、MIPI_Tx)时,需要调用HI_MPI_VO_SetGrap

qq_43248127的博客 524

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

长沙红胖子Qt·西安(长沙创微智科)博文大全:开发技术集合(包含Qt实用技术、树莓派、三维、OpenCV、OpenGL、ffmpeg、OSG、单片机、软硬结合等等)持续更新中...

长沙红胖子 Qt・西安,本人拥有省级科研团队从业背景,研发团队产出所有项目、产品方案和研发无分包、无外包、无AI代笔,长期深耕双一流体系高精尖技术配套研发。博客主动剥离复杂底层工况机理,专注沉淀高端、特种行业领域Qt工程化落地实战经验。所有内容均为个人梳理总结的通用性工程方法论,只输出可公开的普适技术思路。

长沙红胖子 Qt・西安|省级科研团队从业背景,深耕双一流体系高精尖技术配套研发|剥离高精尖机理,沉淀高端特种行业领域 Qt 工程化落地经验|博文仅分享通用技术总结,输出公开普适工程思路。 164万+

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

所有文章汇总目录

所有文章汇总目录 其他工具的使用: 1.linux下怎样用ctags查看内核源码 2.UNIX环境高级编程——学习路线图 3.CentOS如何配置国内YUM源 4.发现一份Vim 配置文件,自己感觉特别好的。 5.处理程序时开启多少并发线程最合适? 6.查看进程执行情况的几种方法 7.cmake配置文件一些常用的配置 基础知识: 0.linux基本操作 1.linux高级编程二基础知识 2.linux高级编程三网络以及网络配置 3.linux高级编程四shell编程/指针 4.linux高级编程五结构体 5

888

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

开源鸿蒙PC版开发指南与生态现状

开源鸿蒙(OpenHarmony)作为新一代分布式操作系统,正在从移动端向PC领域扩展。其微内核架构和模块化设计为开发者提供了灵活的定制空间,特别是在x86架构支持后,PC端开发迎来新机遇。技术实现上,ArkUI-X跨平台框架和HDF驱动框架是关键创新点,前者实现多平台UI统一,后者提供硬件抽象层支持。在应用开发层面,Electron、Rust等技术栈的适配进展显著,其中Rust凭借高性能和内存安全特性,成为系统级开发的首选。实际部署时需注意GPU加速优化和存储访问性能调优,这些技术对构建高性能桌面应用至关

weixin_33957648的博客 322
上一篇: 海康威视的球形摄像头技术研究
下一篇: 大疆无人机篇-初步调研
linux_0416
博客等级 码龄9年 79粉丝 39原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值