qt安装1.docx

上传人:b****2 文档编号:2414388 上传时间:2023-05-03 格式:DOCX 页数:11 大小:20.51KB
下载 相关 举报
qt安装1.docx_第1页
第1页 / 共11页
qt安装1.docx_第2页
第2页 / 共11页
qt安装1.docx_第3页
第3页 / 共11页
qt安装1.docx_第4页
第4页 / 共11页
qt安装1.docx_第5页
第5页 / 共11页
qt安装1.docx_第6页
第6页 / 共11页
qt安装1.docx_第7页
第7页 / 共11页
qt安装1.docx_第8页
第8页 / 共11页
qt安装1.docx_第9页
第9页 / 共11页
qt安装1.docx_第10页
第10页 / 共11页
qt安装1.docx_第11页
第11页 / 共11页
亲,该文档总共11页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

qt安装1.docx

《qt安装1.docx》由会员分享,可在线阅读,更多相关《qt安装1.docx(11页珍藏版)》请在冰点文库上搜索。

qt安装1.docx

qt安装1

一.Qt4.4.3安装方法:

在这里我列举两种安装方法,经过我尝试,这两种方法都可以成功安装qt4.4.3,但是由于要把qt移植到开发板,所以个人推荐第二种安装方法,第一种方法未必不适合移植,但没有试过,有兴趣的读者可以自己尝试。

1.方法一:

PC所用Linux系统版本:

Fedora10

Qt/Embedded版本:

qt-embedded-linux-opensource-src-4.4.3

Qt/X11版本:

qt-x11-opensource-src-4.4.3

(这两个版本在官网上都有下载)

整个安装过程,其实也就时几个指令的问题:

------>解压缩Qt/Embedded,指令tarzxvfqt-embedded-linux-opensource-src-4.4.3.tar.gz

------>为以后方便观看,可将解压缩后的文件夹重命名为qte:

mvqt-embedded-linux-opensource-src-4.4.3qte

------>进入qte文件夹,进行配置,我的指令是:

./configure-prefix/opt/qte-qt-mouse-linuxtp-qvfb

(其中-qvfb是必须的,否则你编译完后发现自己的Qt/E连qvfb调试器都不支持,白忙活一场,

-prefix/opt/qte是指将最终编译得到的各种工具,如qvfb,qmke,designer等以及库都安装在指定路径/opt/qte,当然这个选项你也可以不写,如果你不写的话系统编译后会自动帮你创建一个/usr/local/trolltech/qt...目录,上面所说的文件就都安装在这个目录下了;但是如果你要安装在指定目录下的话,必须要先手动创建这么一个目录,如我这个就必须先在执行./configure命令之前先创建/opt/qte目录,否则会出错,又白忙活了。

如果你还要用到数据库mysql等其他一些内容的时候,一定要看./configure--help帮助文档,必要时可以先测试一下这个选项,如果只有一个选项的话,configure是很快的,特别是有错误发生的时候)

整个安装过程大概就只有./congigure是又技术含量的,其他的就没什么好操作的了,接着的步骤:

--------->make(相当漫长的过程)

---------->makeinstall(很多网上的帖子都没这一步,如上面所说,这一步就是将编译后的各种工具、库等安装到你先前指定的目录)

---------->设定环境变量(这是新手很头疼的问题,其实弄清楚后也挺简单的,就是给你的指令指定一个可执行的路径,具体实现为:

在你的用户目录下【若为管理员账户,则为/root,若为普通用户,则在/home/你的用户名】,修改.bashrc文件。

打开.bashrc文件,在文件末尾添加这么几行

exportQTDIR=/opt/qpe

exportQTEDIR=$QTDIR

exportPATH=/opt/qte/bin:

$PATH

exportLD_LIBRARY_PATH=opt/qte/lib:

$LD_LIBRARY_PATH

保存,搞定。

这样,以后你只要在终端输入qmake或make或designer等指令就可以直接使用qmake等工具了,而不再需要进入到/opt/qte/bin里面来执行./qmake了,这就是环境变量的作用。

Qt/Embedded的安装到此告一段落,接着轮到Qt/X11,这个就简单多了,因为它在./configure时没什么要求。

----------->解压缩,tarzxvf.....

----------->更改解压缩后的文件名为qt(仅仅是为了个人方便):

mv....qt

------------>进入qt文件夹,执行./configure-prefix/opt/qt-qvfb

------------->make(更加漫长的过程)

-----------makeinstall

------------>进入到解压缩文件夹qt里的tool/qvfb目录,输入make

------------>将qt文件夹里的bin/qvfb复制到/opt/qte/bin目录下

最后两个步骤是为了生成qvfb。

用于调试程序,可进入到qte/demos/chip下,调试一个例程看看qvfb是否已经安装成功。

#qvfb&

#./chip-qws

便会看到qvfb上显示有相关例程的图像了。

到此,安装过程全部结束

如果在.配置指令/configure……执行后,发生错误,可以进入到解压缩文件目录(如qt/,qte/),执行makeclean便可将前面所有的配置都清除掉。

在qt和qtemakeinstall完后,可执行makeclean将中间生成的许多.o文件清楚,这些临时文件要占很大一部分空间。

--------------------------------------------------------------------------------------------------------------------------------------------

2.方法二:

由于qt4.4.3分为Qt/Embedded和Qt/X11两部分,本方法中Qt/X11的安装编译方法与方法一中一致,读者可自行参考方法一。

下面重点介绍Qt/Embedded的安装,为了以后便于向开发板移植,我们在编译Qt/Embedded前编译安装触摸屏的库文件tslib-1.4

(1)安装tslib-1.4

这是个触摸屏的库文件,据网上说qt4只支持tslib-1.4。

我没有实验别的,就用了这个,可以成功。

把tslib-1.4.tar.gz放到/home目录下

#tarxvzftslib-1.4.tar.gz

#cdtslib

#./autogen.sh

#./configure--prefix=/home/mytslib/--host=arm-linuxac_cv_func_malloc_0_nonnull=yes

#make

#makeinstall

这样以后可以看到/home/mytslib/下有了库文件,移植时会用到!

先不详细说明。

(2)安装qt-x11-linux-opensource-src-4.4.3.tar.gz

把qt-embedded-linux-opensource-src-4.4.3.tar.gz放到/tmp目录下

在安装qt-embedded-linux-opensource-src-4.4.3.tar.gz之前先在根目录下建立两个目录(即文件夹)如下步骤:

#cd/进入根目录

#mkdirmini2440这里准备存放qt-embedded-linux-opensource-src-4.4.3的库文件

最后要移植到开发板的。

#mkdirtslib这里准备放触屏的库文件,最后也会移植到开发板。

好了,现在安装qt-embedded-linux-opensource-src-4.4.3.tar.gz

#cd/tmp确定qt-embedded-linux-opensource-src-4.4.3.tar.gz放到/tmp目录下了才行

#tarxvzfqt-embedded-linux-opensource-src-4.4.3.tar.gz

#cdqt-embedded-linux-opensource-src-4.4.3.

#./configure-prefix/mini2440-release-shared-fast-pch-no-qt3support-qt-sql-sqlite-no-libtiff-no-libmng-qt-libjpeg-qt-zlib-qt-libpng-qt-freetype-no-openssl-nomakeexamples-nomakedemos-nomaketools-optimized-qmake-no-phonon-no-nis-no-opengl-no-cups-no-xcursor-no-xfixes-no-xrandr-no-xrender-no-xkb-no-sm-no-xinerama-no-xshape-no-separate-debug-info-xplatformqws/linux-arm-g++-embeddedarm-depths16-no-qvfb-qt-gfx-linuxfb-no-gfx-qvfb-no-kbd-qvfb-no-mouse-qvfb-qt-kbd-usb-confirm-license-qt-mouse-linuxtp-qvfb-I/home/duancp/mytslib/include-L/home/duancp/mytslib/lib

mini2440内的空间有限,所以剪裁很多,注意最后的红色部分是为了找到触屏的库文件,然后

#gmake

#gmakeinstall

这样,嵌入式版本的qt4也装成功了,若想进行交叉编译,首先也得改变环境变量,所以也可以在当前目录下建一个环境变量的文件setenv-embedded.sh如下:

#geditsetenv-embedded.sh

这时跳出一个编辑文本输入:

PATH=/mini2440/bin:

$PATH

QTDIR=/mini2440

MAINPATH=$QTDIR/man:

$MAINPATH

LD_LIBRARY_PATH=$QTDIR/lib:

$LD_LIBRARY_PATH

exportPATHQTDIRMAINPATHLD_LIBRARY_PATH

保存退出。

每次进行qt4-embedded的交叉编译前先#sourcesetenv-embedded.sh

 

到目前为止,两个版本的qt4在PC机上的安装算是结束了,下一步要移植嵌入式的qt4库文件到开发板。

二.Qt4.4.3移植方法:

前面介绍了在根文件系统下建立两个目录mini2440和tslib1.4.经过第5步后,mini2440内已经有了库文件,现在把触屏的库文件移植到tslib目录。

#cd/home/mytslib进入触屏库文件所在地

#cp-frlib/tslib把lib目录放到根目录的tslib目录下

在根文件的mini2440文件中除了有lib目录,还有bin,examples等目录,但是移植到开发板的文件只需要mini2440下的lib目录。

Lib目录有30多兆,若太大,可以删除/lib/fonts中的一些字体!

首先,在超级终端下操作开发板,在开发板的根目录下建立两个目录mini2440和tslib,一样的方法:

#mkdirmini2440注意这是对开发板的操作,不再是PC机了!

#mkdirtslib

然后,不你是用什么方法,要把PC机根目录下/mini2440里的lib目录(整个文件件)(其他的如bin等都不用)全部拷到开发板根目下的/mini2440中,同理把要把PC机根目录下/tslib里的lib目录(整个文件件)全部拷到开发板根目下的/tslib中.

你可以用串口传输,或者优盘传输,或者nfs等,最终的效果是开发板根目录下的/mini2440中有QT4的lib,/tslib有触屏的lib.

最后,就是设置开发板的环境变量了:

在超级终端里的命令行下输入:

#exportQTDIR=/mini2440

#exportT_ROOT=/tslib

#exportPATH=$QTDIR/bin:

$PATH

#exportTSLIB_CONSOLEDEVICE=none

#exportTSLIB_FBDEVICE=/dev/fb0

#exportTSLIB_TSDEVICE=/dev/input/event0

#exportTSLIB_PLUGINDIR=$T_ROOT/lib/ts

#exportTSLIB_CONFFILE=$T_ROOT/etc/ts.conf

#exportTSLIB_CALIBFILE=/etc/pointercal

#exportQWS_MOUSE_PROTO=tslib:

/dev/input/event0

#exportLD_LIBRARY_PATH=$T_ROOT/lib:

$QTDIR/lib

 

到目前位置,这个移植过程算是结束了,这样就可以成功了!

 

三.利用Qt4.4.3编写程序及编译的方法:

虽然qt4没有成功移植到mini2440开发板上,但是以下关于qt4.4.3的编译方法是正确的,可以用qvfb仿真。

在这里针对之前Qt/Embedded的两种安装方法,这里也有两种编译方法,分别和之前两种方法对应。

个人推荐第二种方法。

方法一:

1.利用./designer设计一个ui界面,保存到/root目录,命名为hu.ui

2.设置qmake环境

exportQTEDIR=/usr/local/Trolltech/QtEmbedded-4.5.2-x86/

exportPATH=/usr/local/Trolltech/QtEmbedded-4.5.2-x86/bin/:

$PATH

exportLD_LIBRARY_PATH=/usr/local/Trolltech/QtEmbedded-4.5.2-x86/lib/:

$LD_LIBRARY_PATH

3.将hu.ui导出头文件,uichu.ui-ohu.h

4.添加main.cpp文件如下

#include

#include

#include

#include"hu.h"//只需要改这句,改为你所编写的程序的名称xx.h

classWin:

publicQMainWindow,publicUi:

:

MainWindow

{

 public:

     Win(QMainWindow*parent=0):

QMainWindow(parent)

     {setupUi(this);}

};

intmain(intargc,char*argv[])

{

   QApplicationa(argc,argv);

   Winw;

   w.show();

   returna.exec();

   

}

5.然后生成.pro工程文件和Makefile文件

qmake–project//千万看清这里有个空格

qmakehu.pro

6.最后make

将生成的执行文件通过QVFB测试

方法二

例子helloworld!

A,PC机下编译:

进入PC机中/opt/qt-x11-linux-opensource-src-4.4.3

#cd/opt/qt-x11-linux-opensource-src-4.4.3

#sourcesetenv-x11.sh改变环境变量,设置为适合pc机的开发环境

#mkdirhello

#cdhello进入hello目录

#vihello.cpp编写helloworld程序,在hello.cpp中输入以下代码:

#include

#include

 

intmain(intargc,char*argv[])

{

QApplicationapp(argc,argv);

QPushButtonb("HelloWorld!

");

b.show();

QObject:

:

connect(&b,SIGNAL(clicked()),&app,SLOT(quit()));

returnapp.exec();

}

保存退出。

然后在当前目录下继续执行以下命令:

#qmake-project

#qmake

#make

#ls

这时在这个目录下可以看到生成了可执行文件hello,然后

#./hello

你会发现,跳出了一个helloworld的对话框,这样一个简单的界面就成功了

B,交叉编译

首先把/opt/qt-x11-linux-opensource-src-4.4.3下的hello目录拷到/tmp/qt-embedded-linux-opensource-src-4.4.3目录下

#cp-fr/opt/qt-x11-linux-opensource-src-4.4.3/hello/tmp/qt-embedded-linux-opensource-src-4.4.3

#cd/tmp/qt-embedded-linux-opensource-src-4.4.3

#sourcesetenv-embedded.sh这一步很关键,否则你交叉编译不了,改变的环境变量

#cdhello

#makeclean

#qmake-project重新生成.pro

#qmake重新生成适合交叉编译的Makefile

#make

#ls

这时候,你发现有hello的可执行文件,原来的hello已经被替换掉了,现在这个hello文件是适合开发板运行的!

这时候你如果执行./hello是不会有界面的,把它放到开发板的文件系统下才会有界面(前提是设置好了开发板的环境变量)

 

四.Qt2编译全流程:

1.用designer编写ui文件

2.Source/opt/FriendlyARM/mini2440/arm-qtopia/qtopia-2.2.0-FriendlyARM/setQpeEnv

#这里要注意qt的安装路径

3.uicxxx.ui-oxxx.h

uicxxx.ui-ixxx.h-oxxx.cpp

4.可以gedit生成main.cpp,内容可以参考hello里的main.cpp

main.cpp应包括如下内容:

#include"hello.h"

#include

QTOPIA_ADD_APPLICATION("hello",Form1)

QTOPIA_MAIN

5.Qmake–project(这里有个空格,勿忘)

6.修改.pro文件,在input前加入

CONFIG+=qtopiaapp

CONFIG-=buildQuicklaunch

DESTDIR=$(QPEDIR)/bin

Input后加入

TARGET=.pro名称

(详见hello例子的.pro文件写法,这里的.pro写法是我试出来的,仅是个人想法)

7.qmake-spec/opt/mini2440/arm-qtopia/qtopia-2.2.0-FriendlyARM/qtopia/mkspecs/qws/linux-arm-g++-oMakefile*.pro#这里要注意qt的安装路径

8.Make

9.编写.desktop文件,详见mini2440例子

.desktop写法

[DesktopEntry]

Comment=AnExampleProgram

Exec=hello

Icon=Hello#这里要写自己的程序名称

Type=Application

Name=Hello2440

10.拷到开发板,rz指令,详见mini2440pdf

其中qt2的安装编译可以参考mini2440的pdf,由于mini2440开发板上本身自带qt2,所以不必移植。

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 医药卫生 > 基础医学

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2