之前对X11 FRAMEBUFFER理解的不够,现在总结一下
Qt
Embedded是挪威Trolletch公司的图形化界面开发工具Qt的嵌入式版本,它通过QtAPI与LinuxI/O以及Framebuffer直接交互,拥有较高的运行效率,而且整体采用面向对象编程,拥有良好地体系架构和编程模式。

Qt/Embedded在原始Qt的基础上,做了许多出色的调整以适合嵌入式环境。同
Qt/X11相比,Qt/Embedded很节省内存,因为它不需要Xserver或是Xlib库,它在底层摒弃了Xlib,采用framebuffer
作为底层图形接口。Qt/Embedded的应用程序可以直接写内核帧缓冲,因此它在嵌入式linux系统上的应用非常广泛。
Qt/Embedded 与
Qtopia
在Qt/Embedded版本4之前,Qt/Embedded和Qtopia是两套不同的程序,Qt
/Embedded是基础类库,Qtopia是构建于Qt/Embedded之上的一系列应用程序。但从版本4开始,Trolltech将Qt
/Embedded并入了Qtopia,并推出了新的Qtopia4。在该版中,原来的Qt/Embedded被称为QtopiaCore,作为嵌入式版本的核心,既可以与Qtopia配合,也可以独立使用。原来的Qtopia则被分成几层,核心的应用框架和插件系统被称为Qtopia
Platform,上层的应用程序则按照不同的目标用户分为不同的包,如Qtopai PDA,Qtopia Phone等

X11(X Window
System)是一个用于X Server和X Client通信协议。 Xlib将X11具体为一个个的功能函数。
Qt、Gtk+等为了更方便的利用Xlib,对其进行再封装,形成了多组件应用程序开发框架(widget toolkits)。
Qt有3个版本,商业版和免费版(GPL和LGPL)。Qt是跨平台的,所以为四个OS平台开发了不同的产品:面向Linux的就叫Qt/X11,这个实际上是使用Xlib库;面向嵌入式Linux就叫Qt/Embedded,这个采用直接同Linux
I/O或Framebuffer打交道;再就是面向Mac OS X和面向Windows的产品(?可能就直接叫做Qt)。基于Qt有最成功的产品 ---
KDE。基于Gtk+有最成功的产品 --- GNOME。二者基本成为Linux 桌面版本的标准组成部分。
以下内容整理自互联网。
我们一般的开发情况是这样的:
   在跑linux 的PC上安装基于
X11的PC版本和基于Embedded的嵌入式版本。
 
之所以要安装PC版本,是因为我们的开发环境一定是PC平台,在PC上设计好QTE,编译好后是无法在PC上运行的,无法调试。
  
所以安装基于X11的PC版本,就可以调试了。因为QT是跨平台的。
 
所以我们平时是这样开发的:在基于X11的PC上设计好,达到我们的要求后,用目标平台的环境编译程序,拷贝到开发板即可运行。
说白了
就是搭建两个编译环境,根据你的目的选择编译环境而已。当然 嵌入式的QT相关文件必须拷贝到开发板的文件系统里哦

这儿配上一幅图片大家什么都明白了

X11 FRAMEBUFFER QT的更多相关文章

  1. X11,GTK,QT,GNOME的区别与联系(UI工具总结)

    1,X11是X Window System Protocol, Version 11(RFC1013),是X server和X client之间的通信协议.X server是xfree86/xorg驱 ...

  2. 编译x11版本qt

    用buildroot 选择x11相关 在选择qt x11版本   export PATH=~/buildroot/output/host/usr/bin:$PATH 进入~/buildroot/out ...

  3. Linux图像系统框架-理解X11与Qt的层次结构

    转:http://blog.csdn.net/kjfureone/article/details/52848550 1. 前言 图形子系统是linux系统中比较复杂的子系统之一:对下,它要管理形态各异 ...

  4. 是什么让 Ubuntu 选用 Qt 而不是 GTK?

    是什么让 Ubuntu 选用 Qt 而不是 GTK? 一个正在发生的事实,Ubuntu正在不断Qt化!我曾一直在抱怨的Software Center,今日一看源码,竟然有softwarecenter/ ...

  5. QT、QTE、qtopia区别

    QT.QTE.qtopia区别 Qt的授权是分为两条线,商业版和开源版.如果使用商业版的Qt,那么开发出的程序可以是私有的和商业的:如果使用的是开源版的Qt,由于其使用的是GPL协议,那么可发出的程序 ...

  6. Qt概念和快捷键

    Qt概念和快捷键 Qt简介        1.Qt的由来和发展 Qt是一个1991年由Qt Company开发的跨平台C++图形用户界面应用程序开发框架.它既可以开发GUI程序,也可用于开发非GUI程 ...

  7. linux下编译qt5.6.0静态库(使用./configure --help来看看都有哪些参数。超详细,有每一个模块的说明。如果改变了安装的目录,需要到安装目录下的bin目录下创建文件qt.conf)(乌合之众)good

    linux下编译qt5.6.0静态库 linux下编译qt5.6.0静态库 configure生成makefile 安装选项 Configure选项 第三方库: 附加选项: QNX/Blackberr ...

  8. linux(debian) arm-linux-g++ v4.5.1交叉编译 embedded arm 版本的QtWebkit (browser) 使用qt 4.8.6 版本

    最近需要做一个项目 在arm 架构的linux下 没有桌面环境的情况下拉起 有界面的浏览器使用. 考虑用qt 的界面和 qtwebikt 的库去实现这一系列操作. 本文参考: Qt移植到ARM Lin ...

  9. Qt简介

    一.Qt与Qt Creator简介        Qt是一个跨平台应用程序和 UI 开发框架.使用 Qt 您只需一次性开发应用程序,无须重新编写源代码,便可跨不同桌面和嵌入式操作系统部署这些应用程序. ...

随机推荐

  1. P3960 列队

    这是NOIP 2017最后一道题 不知道这道题有没有人代码写的和我一样麻烦. Solution 30分暴力 维护每行每列的元素. 每次删除一个元素的时候, 需要修改一行一列 因此复杂度上界\(O(nm ...

  2. 机器学习-sklearn-learn

    随即森林 from sklearn import neighbors, datasets, preprocessing from sklearn.model_selection import trai ...

  3. 微信小程序之wepy自动化架构搭建(fly+wepy-plugin-replace)

    前言 本文章秉着自动化工程项目的思想搭建的,基础架子完全按照wepy官网搭建,在基础上增加配置达到自动化项目.新增动flxio拦截器自动处理接口,新增根据环境变量来改变运行时的参数. Fly.js 小 ...

  4. js过滤检测敏感词汇

    html: <textarea rows="10" cols="100" id="myDiv"></textarea> ...

  5. spring_150909_hibernate_id_table

    1.新建java工程:spring_150909_hibernate_id_table,如下图所示: 2.建DogPet实体类: package com.spring.model; import ja ...

  6. SCU 4445 Right turn

    模拟. 每次找一下即将要遇到的那个点,这个数据范围可以暴力找,自己的写的时候二分了一下.如果步数大于$4*n$一定是$-1$. #include<bits/stdc++.h> using ...

  7. Python数据类型-集合(set)

    1.创建集合 集合的创建不同于前两种数据结构. 集合通过set(iterable)方法创建,参数iterable为可迭代对象. 示例代码: s1 = set('好好学习天天想上') # 将字符串分解为 ...

  8. 隐马尔可夫模型(Hidden Markov Model)

    隐马尔可夫模型(Hidden Markov Model) 隐马尔可夫模型(Hidden Markov Model, HMM)是一个重要的机器学习模型.直观地说,它可以解决一类这样的问题:有某样事物存在 ...

  9. Docker应用系列(二)| 构建Zookeeper集群

    本示例基于Centos 7,在阿里云的三台机器上部署zookeeper集群,假设目前使用的账号为release,拥有sudo权限. 由于Docker官方镜像下载较慢,可以开启阿里云的Docker镜像下 ...

  10. HDU3853 LOOPS 期望DP 简单

    http://acm.hdu.edu.cn/showproblem.php?pid=3853 有一点坑的地方是如果一个地方停在原地的概率为1,那么该地的期望为0,就相当于这个地方也是一个出口...   ...