s3c2410上搭建QT/Embedded4.8.5开发环境(一)---环境导读

简介:

近期参加个比赛,需要用到博创s3c2410的开发板,搭建QT/Embedded的环境,真费了不少功夫,开始想用那个qtopia的桌面的,但是移植老是不成功,后来看看用的是CentOS6.4,但是开发板光盘里提供的,qtopia(版本竟然还是2.1.1)这个东西太老了,已经绝版了。在这里给各位以后开发的兄弟提个醒,qtopia这就是个坑.

QT各版本起源


Qt 的版本是按照不同的图形系统来划分的,目前分为四个版本
Win32版,适用于Windows平台;
X11版,适合于使用了x系统的各种 linux 和 unix的平台;
Mac版,适合与苹果MacOS;
embedded版,适合于具有帧缓冲(framebuffer)的linux 的平台。

Qt,Qt/E,Qtopia Core, Qtopia这些版本之间的区别和联系 


Qt泛指Qt的所有桌面版本,


比如Qt/X11,Qt Windows,Qt Mac(当然QT5以后还有AndroidiOS)等。由于Qt最早是在Linux中随着KDE流行开来的,因此通常很多人说的Qt都指用于Linux/Unix的Qt/X11。一般命名以qt-x11-opensource-xxx!


QT/E -> Qtopia-core -> Qt-embedded-opensource(同一种鸟)


Qt 在刚出现的时候,对于Linux和Unix系统,只有构建于Xlib之上的X11版。但随着Linux操作系统在嵌入式领域的应用日渐广泛,Qt推出了嵌入式的版本Qt/E。由于嵌入式受限的硬件环境往往难以运行庞大的X服务器,Qt/E去掉了X Lib的依赖而直接工作于Frame Buffer上,因而效率更高,但它并不是Qt的子集,而应该是超集,部分机制(如QCOP等)不能用于Qt/X11中。

值得一题的是QT/E现在的源码包名字叫qt-everywhere,它跟Qtlibraries 4.8.5 for Linux/X11其实是一样的东西,只不过用的编译器不同,就能配出不同的环境,qt-everywhere意思就是说与QT4一样的代码可以同时运行在嵌入式环境和PC主机中。

QtExtended->Qtopia(注意不是Qtopia-core,两者是不一样的):


一般命名为qtopia-opensource,最初是sourceforge.net上的一个开源项目,全称是Qt Palmtop Environment,是构建于Qt/E之上一个类似桌面系统的应用环境,包括了PDA和手机等掌上系统常见的功能如电话簿、日程表等。后来Qtopia 已经成为了Trolltech的又一个主打产品,为基于Linux操作系统的PDA和手机提供了一个完整的图形环境。相比之下,Qt/E是qtopia基础类库


在2008年9月30日前称Qtopia。从Qtopia 4.4.0以后的版本开始,称为QtExtended 4.4.1。

但是其最终在开发中止2008年3月5日,版本停留在4.4.3,在版本4之前,Qt/E和Qtopia是不同的两套程序,Qt/E是基础类库,Qtopia是构建于Qt/E之上的一系列应用程序。但从版本4开始,Trolltech将Qt/E并入到了Qtopia产品线中去了,并推出了新的Qtopia4。但实际上原来的Qt/E仍然作为基础类库,只是改名为Qtopia Core了,也许又感觉Qtopia Core跟Qtopia容易让人搞混,所以又改名为qt-embedded-linux-opensource-linux/wince(QT也支持Wince )。它作为嵌入式版本的核心,既可以与Qtopia配合,也可以独立使用。而原来的Qtopia则被分成几层,核心的应用框架和插件系统被称为Qtopia Platform,上层的应用程序则按照不同的目标用户分为不同的包,如Qtopai PDA,Qtopia Phone。

Qte的改名过程,Qte-->Qtopia Core-->Qt-embedded-linux-xxxx-Qt-everywhere


The end/QtEmbedded概述


Qtopia这个东西目前已经停止维护了,我们用这个东西很麻烦,也很旧

因此我们选用QT/EMbedded4.8.5开发

在Linux中分别安装应用于不同平台的Qt:PC平台;嵌入式X86平台;ARM平台。

这三者PC版、嵌入式X86版和ARM版的区别主要体现在:当configure时分别加了不同的参数,

具体区别是:

ARM平台:

编译好的程序,用于在arm平台上运行。这个主要是用来编译,因为要下载到开发板上,需要arm版的qte的库文件,编译后直接下载到开发板运行;

具体安装配置过程请看这里http://blog.csdn.net/gatieme/article/details/22919963

嵌入式X86平台

嵌入式X86平台:基于frame-buffer,在PC机上可以模拟应用程序在arm开发板上的运行情况。用此编译好的程序,只用“./”命令不可以运行,必须加上参数 [ -qvfb ]–qws

这个自带有个模拟器,可以模拟出arm开发板的样子出来。方便调试;

具体安装配置过程请看这里ARM平台http://blog.csdn.net/gatieme/article/details/23106529

PC平台(X11平台)

PC平台(X11平台):在linux中全安装qt,用它编译好程序后,在X11环境中直接用“./”就可运行。

具体安装配置过程请看这里http://blog.csdn.net/gatieme/article/details/22915759

注意

值得注意的是前面我们编译x86的版本是基于frame-buffer机制的,运行使用使用qvfb,它是一个x11平台的模拟器,用来模拟qt embedded的工作流程。因此qvfb必须用x11平台的qt版本来编译

或者我们干脆可以直接从包管理器中下载一个qvfb


转载:http://blog.csdn.net/gatieme/article/details/22890147

目录
相关文章
|
30天前
|
IDE 编译器 开发工具
C/C++ IDE环境 (Qt Creator visual studio等) Cmake工程不显示头文件的解决方案
C/C++ IDE环境 (Qt Creator visual studio等) Cmake工程不显示头文件的解决方案
21 0
|
1月前
|
Unix 编译器 开发者
Qt5.14.2 轻松掌握Qt中的压缩与解压缩:QuaZIP的神秘面纱与实战演练之windows环境编译
Qt5.14.2 轻松掌握Qt中的压缩与解压缩:QuaZIP的神秘面纱与实战演练之windows环境编译
|
3月前
|
编译器
QT creator开发环境下 界面更改后运行程序不能实时更新或者在源文件添加该控件后无法编译的问题
在使用QT Creator开发界面的过程中,偶尔会出现添加控件后,运行程序后,界面控件无法更新的情况,或者在源文件使用该控件却出现无法编译的情况,使用QT Creator 4.8.2也会出现这个情况,也不知道这种情况会不会在以后有所改善。
60 0
|
18天前
|
编译器
正点原子IMX6ULL-安装交叉编译器、编译tslib触摸屏库、编译arm环境qt源代码
正点原子IMX6ULL-安装交叉编译器、编译tslib触摸屏库、编译arm环境qt源代码
|
1月前
|
IDE 数据可视化 开发工具
【Qt】—— Qt开发环境的搭建
【Qt】—— Qt开发环境的搭建
|
1月前
|
编解码 Android开发 开发者
QT5.14.2 VS2022环境下FFmpeg与QT的完美邂逅
QT5.14.2 VS2022环境下FFmpeg与QT的完美邂逅
|
1月前
QT 5.14.2版本 MAC环境安装部署流程
QT 5.14.2版本 MAC环境安装部署流程
|
2月前
|
开发工具 C++ git
QT基础【1-开发环境安装】
QT基础【1-开发环境安装】
|
6月前
|
Linux 开发工具 git
[笔记]ubuntun18.0+clion+qt5 搭建跨平台应用环境
[笔记]ubuntun18.0+clion+qt5 搭建跨平台应用环境
|
4月前
|
NoSQL 编译器 开发工具
音视频源码调试前准备vs2019+qt5.15.2搭建可调试环境
音视频源码调试前准备vs2019+qt5.15.2搭建可调试环境
30 0

推荐镜像

更多