深度解析嵌入式QT开发环境搭建

本篇文章介绍的是嵌入式QT开发环境搭建,之前有接触过QT的其他开发环境,那么希望本篇文章对你有所帮组。对于嵌入式相信各位都有了解。

Qt的各个版本简介:

1.什么是QT

Qt是一个完整的C++应用程序开发框架。它包含一个类库,和用于跨平台开发及国际化的工具。Qt API在所有支持的平台上都是相同的,Qt工具在这些平台上的使用方式也一致, 因而Qt应用的开发和部署与平台无关。

2.什么是Qtopia

Qtopia是一个面向嵌入式Linux的全方位应用程序开发平台,同时也是用于基于Linux的PDA(个人数字助理),智能电话(Smartphone)以及其他移动设备的用户界面。简单地说,Qtopia实质上是一组关于PDA和智能电话的应用程序结合,如果需要开发这类产品可以在这组程序的基础上迅速构建出PDA或者智能电话。Qtopia实质上依赖Qt/Embedded。

3.什么是Qt/Embedded

Qt/Embedded是一个完整的自包含GUI和基于Linux的嵌入式平台开发工具。这个开发工具的名字好像最容易混淆,当然Qt/Embedded是最熟悉的名字,好像Qtopia Core说的也是它。最近,奇趣公司又该名字了,它的新名字叫做qt-embedded-linux-xxxx,看来这个Qt/Embedded的马甲还很多哈。

下面就是搭建Qt开发平台了,我的平台是fedora core 7,需要的Qt版本有两个:

1 qt-x11-opensource-src-4.3.2.tar.gz

2 qt-embedded-linux-opensource-src-4.4.0-rc1.tar.bz2

qt-x11版本可以产生Qt开发工具,如designer等等,最重要的是可以得到qvfb,嵌入式的开发有了qvfb,就可以不需要实际的开发板,也可以开发Qt应程序。qt-embedded版本就是专门用于嵌入式方面的版本。下面是安装步骤:

1. 解压这两个qt包

3 a) tar –jxvf qt-x11-opensource-src-4.3.2.tar.gz

4 b) tar –jxvf

5 qt-embedded-linux-opensource-src-4.4.0-rc1.tar.bz2

6 c) cp qt-embedded-linux-opensource-src-4.4.0-rc1

7 qt-embedded-linux-opensource-src-4.4.0-rc1-x86

8 d) mv qt-embedded-linux-opensource-src-4.4.0-rc1

9 qt-embedded-linux-opensource-src-4.4.0-rc1-arm

这里,qt-embedded有两个复制:qt-embedded-linux-opensource-src-4.4.0-rc1-x86和qt-embedded-linux-opensource-src-4.4.0-rc1-arm,根据他们的名字可以知道前者是适合x架构的,后者适合arm架构为什么需要两个呢?如果有开发板的话,可以只编译qt-embedded版本成arm架构的就可以了,但是很多时候用qvfb的话,开发会方便很多,所以多编译一个x86架构的也不错。这里是否有些疑问,qt-x11也是适合x86结构的,这不是和qt-embedded重复了吗?

答案是这样的,qt-embedded版本只能在嵌入式板子上面运行,编译成x86架构的程序也只能在x86的嵌入式板子上跑。前面说过,我们需要qvfb来开发,但是qvfb只能执行x86架构的应用程序,所以需要让qt-embedded生成关于x86的库和其他文件。而将qt-embedded编译成arm,又是为什么呢?道理很简单,我最终的qt应用程序需要在arm架构上面运行,当然需要这方面的库,所以编译成arm也就顺理成章了。

简单的总结一下,首先,使用qt-x11提供的库和开发工具开发出qt应用程序,然后使用qt-embedded关于x86库和工具再次编译我们开发qt应用程序,这是所得到的可执行文件就可以在qvfb上运行了,最后,使用qt-embeddedd的arm库再次编译就可以得到在arm上能运行的可执行程序。很明显,如果有开发板,第二步是可要可不要的(最好是要),如果没有开发板的话,第三步也就没必要了,这样就不需要将qt-embedded编译成适合arm架构的。

具体步骤与说明:

1. 下载源码包

10 qt-x11-opensource-src-4.5.0.tar.bz2

11 qt-embedded-linux-opensource-src-4.5.0.tar.bz2

下载地址:ftp://ftp.qtsoftware.com/qt/source/

2.编译及安装qt-x11-opensource-src-4.5.0

qt-x11版本可以产生Qt开发工具,如designer等等,最重要的是可以得到qvfb,嵌入式的开发有了qvfb,就可以不需要实际的开发板,也可以开发Qt应程序。qt-embedded版本就是专门用于嵌入式方面的版本。

12 tar xjvf qt-x11-opensource-src-4.5.0.tar.bz2

13 cd qt-x11-opensource-src-4.5.0

14 ./configure

15 make

16 make install

历经漫长的编译过程,约一个半小时,默认安装在/usr/local/Trolltech/Qt-4.5.0下.编译完成后源程序不要删除,还有用。

3.编译及安装qt-embedded-linux-opensource-src-4.5.0

在用户目录下建立一个src目录,用于存放编译源文件qt-embedded-linux-opensource-src-4.5.0.tar.bz2。将其解压得到qt-embedded-linux-opensource-src-4.5.0,重命名为qt-embedded-linux-opensource-src-4.5.0-x86.再次解压qt-embedded-linux-opensource-src-4.5.0.tar.bz2,并重命令为qt-embedded-linux-opensource-src-4.5.0-arm.为什么有两个复制呢?我们可以从他们的名字上就不难看出前者是适合x架构的,后者适合arm架构的,如果有开发板的话,可以只编译qt-embedded版本成arm架构的就可以了,但是很多时候用qvfb的话,开发会方便很多,所以多编译一个x86架构的也不错。

1 mkdir ~/src

2 mv qt-embedded-linux-opensource-src-4.5.0.tar.bz2 ~/src

3 tar xjvf qt-embedded-linux-opensource-src-4.5.0.tar.bz2

4 mv qt-embedded-linux-opensource-src-4.5.0

5 qt-embedded-linux-opensource-src-4.5.0-x86

6 tar xjvf qt-embedded-linux-opensource-src-4.5.0.tar.bz2

7 mv qt-embedded-linux-opensource-src-4.5.0

8 qt-embedded-linux-opensource-src-4.5.0-arm

9 cd qt-embedded-linux-opensource-src-4.5.0-x86

10 ./configure -prefix /usr/local/Trolltech/QtEmbedded-4.5.0-x86

11 -embedded

12 x86 -qvfb

13 make

14 make install

15 -------OK!qt-embedded-x86被安装在/usr/local/Trolltech/QtEmbedded-4.5.0-x86下.

16 cd qt-embedded-linux-opensource-src-4.5.0-arm

17 ./configure -prefix /usr/local/Trolltech/QtEmbedded-4.5.0-arm

18 -embedded

19 arm

20 make

21 make install

qt-embedded-arm被安装在/usr/local/Trolltech/QtEmbedded-4.5.0-arm下.。

4.至此我们已经安装好了qt-x11版,即在PC机上运行的QT,qt-embedded-x86版(x86体系的嵌入式板子上运行的QT)和qt-embedded-arm(arm板子上运行的QT).

设置环境变量

(1)qt-x11:

22 vi setenv.sh

添加如下内容:

23 PATH=/usr/local/Trolltech/Qt-4.5.0/bin:$PATH

24 LD_LIBRARY_PATH=/usr/local/Trolltech/Qt-4.5.0/lib:$LD_LIBRARY_PATH

保存退出.移到/usr/local/Trolltech/Qt-4.5.0中。

(2)qt-embedded-x86:

25 vi setenv.sh

添加如下内容:

26 QTEDIR=/usr/local/Trolltech/QtEmbedded-4.5.0-x86

27 PATH=/usr/local/Trolltech/QtEmbedded-4.5.0-x86/bin:$PATH

28 LD_LIBRARY_PATH=/usr/local/Trolltech/QtEmbedded-4.5.0-x86/lib:$LD_LIBRARY_PATH

保存退出.移到/usr/local/Trolltech/QtEmbedded-4.5.0-x86中。

(3)qt-embedded-arm:

29 vi setenv.sh

添加如下内容:

30 QTEDIR=/usr/local/Trolltech/QtEmbedded-4.5.0-arm

31 PATH=/usr/local/Trolltech/QtEmbedded-4.5.0-arm/bin:$PATH

32 LD_LIBRARY_PATH=/usr/local/Trolltech/QtEmbedded-4.5.0-arm/lib:$LD_LIBRARY_PATH

保存退出.移到/usr/local/Trolltech/QtEmbedded-4.5.0-arm中。

我们在运行的时候分别运行对应的脚本即可,比如我们要用qt-x11:

33 cd /usr/local/Trolltech/Qt-4.5.0

34 source setenv.sh

然后就可以用qmake designer等工具了.

5.做到这一步还有qvfb没有编译,到qt-x11-opensource-src-4.5.0中重新编译qvfb即可

1 cd qt-x11-opensource-src-4.5.0

2 cd /tools/qvfb

3 make

--会在qt-x11-opensource-src-4.5.0/bin下生成qvfb,我们将它copy至/usr/local/Trolltech/QtEmbedded-4.5.0-x86/bin下

cp ../..bin/qvfb /usr/local/Trolltech/QtEmbedded-4.5.0-x86/bin

6.做一个测试

4 cd /usr/local/Trolltech/QtEmbedded-4.5.0-x86

5 source setenv.sh

6 cd /usr/local/Trolltech/QtEmbedded-4.5.0-x86/demos/books

7 qvfb -width 640 -height 480 &

8 ./books -qws

出错信息一般为

Error opening buffer device /dev/fb0QScreenLinuxFb::connect: No such file  ordirectory这种情况发生最多的是编译Qt-Embedded的x86版本,希望在qvfb上运行应用时

使用者在第一步运行qvfb后,第二步运行./myapp -qws,出现以上的提示错误。原因是Qt-Embedded在查找系统的显示设备时,默认去寻找LinuxFb,也即Linux的/dev/fb0设备,但是如果Qt-Embedded安装了其它显示设备,比如qvfb,则可以在qvfb上显示,但是需要一个插件(或者说驱动,可能会和设备驱动混淆),使Qt-Embedded能使用qvfb。 为了作到这一点,需要在编译Qt-Embedded时的configure命令加上如下选项

9 ./configure -plugin-gfx-qvfb -plugin-kbd-qvfb -plugin-mouse-qvfb

10 或./configure -qt-gfx-qvfb -qt-kbd-qvfb

-qt-mouse-qvfb如果,你不想重新编译Qt-Embedded,也可以单独编译qvfb的gfxdrivers,命令如下

11 $ cd

12 qt-embedded-linux-opensource-src-4.5.1/src/plugins/gfxdrivers/qvfb/$/usr/local/Trolltech/QtEmbedded-4.5.1/bin/qmake$

sudo make install对应所在的路径,在大家的机器上可能不尽相同,领会意思就行

转自:网络

时间: 2024-08-06 03:21:54

深度解析嵌入式QT开发环境搭建的相关文章

嵌入式linux QT开发(二)——QT开发环境搭建

嵌入式linux QT开发(二)--QT开发环境搭建 一.Windows系统QT开发环境搭建 操作系统:Windows 7 QT Creator:qt-creator-win-opensource-2.4.1 QT SDK:qt-win-opensource-4.7.4-mingw 1.安装QT Creator 点击qt-creator-win-opensource-2.4.1源程序安装. 2.安装QT SDK 点击qt-win-opensource-4.7.4-mingw源程序安装. 选择mi

Ubuntu-18.04 LTS嵌入式linux开发环境搭建

Ubuntu-18.04 LTS嵌入式linux开发环境搭建 ubuntu-18.04 LTS于 2018年4月26号正式发布,很多网友早就迫不及待下载下来安装了,同时也在博客分享了自己的安装体验,分desktop和server的文章,写得稍微简单了一些.本人这几个月一直在忙嵌入式AI ARM+VPU平台设计,没有及时去体验ubuntu-18.04 LTS,不过本人也得跟上步伐,因为本公司去年开发的DM8127平台最新版本的SDK3.9.1需要用到64bit虚拟机,正在玩的Intel Movid

嵌入式linux开发环境搭建(四)——Samba服务器的搭建

嵌入式linux开发环境搭建(四)--Samba服务器的搭建 linux系统:ubuntu Server 12.04 安装流程如下: 1.安装 sudo apt-get install samba samba-common 2.修改配置文件/etc/samba/smb.conf [samba] comment = Samba Server browseable = yes path = /home/samba printable = no writable = yes write list =

嵌入式linux开发环境搭建(五)——Ubuntu第三方软件仓库源

嵌入式linux开发环境搭建(五)--Ubuntu第三方软件仓库源 一般来说ubuntu官方的软件仓库由于服务器在国外,下载更新速度较慢,需要将软件仓库更换为国内镜像点. 1.修改源配置文件 先备份原来的配置文件 mv /etc/apt/sources.list /etc/apt/sources.list.bak vim /etc/apt/sources.list 将国内的Ubuntu镜像点添加到配置文件 Ubuntu 163镜像点: deb http://mirrors.163.com/ubu

嵌入式linux开发环境搭建(三)——TFTP服务器的搭建

嵌入式linux开发环境搭建(三)--TFTP服务器的搭建 系统环境:Ubuntu 14.04 server amd64 1.软件安装 apt-get install tftpd tftp openbsd-inetd 2.查看修改配置文件vim /etc/inetd.conf tftp dgram udp wait nobody /usr/sbin/tcpd /usr/sbin/in.tftpd /srv/tftp /srv/tftp为Tftp服务器根目录,可以修改为/home/tftp 3.创

嵌入式linux开发环境搭建(一)——双网卡的网络设置

嵌入式linux开发环境搭建(一)--双网卡的网络设置 一.linux发行版为ubuntu-14.04.4-server-amd64版本 安装ubuntu 二.网络设置 1.虚拟机添加双网卡 eth0桥接无线网卡用于Ubuntu上网,eth1桥接有线网卡用于连接开发板.eth0和eth1网卡设置如下图所示: 2.设置网络 先查看网卡:ifconfig | more 如果没有显示eth0.eth1网卡,则用ifconfig eth0 up;ifconfig eth1 up激活网卡eth0.eth1

嵌入式linux开发环境搭建(二)——NFS服务器的搭建

嵌入式linux开发环境搭建(二)--NFS服务器的搭建 系统环境:Ubuntu 14.04 server amd64 1.安装 apt-get install nfs-common nfs-kernel-server 2.修改配置文件/etc/exports /home/nfs 192.168.0.0/24(rw,sync,no_subtree_check) 3.重启NFS服务器 /etc/init.d/nfs-kernel-server start 4.查看NFS设置 showmount -

嵌入式Linux开发环境搭建

一.制作u-boot.bin文件: tar xjf u-boot-1.1.6.tar.bz2 cd u-boot-1.1.6 patch -p1 < ../u-boot-1.1.6_jz2440.patch make 100ask24x0_config make 二.制作适用于4.3寸屏幕的uImage文件: tar xjf linux-2.6.22.6.tar.bz2 cd linux-2.6.22.6 patch -p1 < ../linux-2.6.22.6_jz2440.patch m

Qt开发环境搭建 - Windows + VS2010 + VS插件

Qt 开发环境搭建 - Windows+VS2010+VS插件 1.Qt在Windows平台下的三种开发环境 方案 编辑器 编译器 调试器 一 Qt Creator MinGW GDB 二 Qt Creator VisualC++ 编译器 Debugging Tools for Windows 三 VS2010自带 VS2010自带 VS2010自带 说明: 1) C/C++语言.Qt库.开发环境.操作系统的关系 2) 编辑器.编译器.调试器三者的关系 2.1) 三者共同组成了开发环境 2.2)