当前位置: 代码迷 >> QT开发 >> Qt生手求大神指点环境搭建
  详细解决方案

Qt生手求大神指点环境搭建

热度:76   发布时间:2016-04-25 03:20:23.0
Qt新手求大神指点环境搭建
看了两天Qt视频 和书 感觉挺简单  也许有写MFC的基础都是类似的东西  光看也不是回事儿 想写写 不过这环境搭建貌似极其痛苦        今天搞 了大半天愣是没搞懂  要装些什么东西 百度了N遍又说 Qt Creator   又是什么Qt 4.8又是 什么MinGW  看的真是   就想砸电脑  就没有一个 想写 MFC 一样的东西 装完就OK  网上的教程乱七八糟  什么玩儿都有  跪求大神来个 简介明了的 搭建方法   就是用 诺基亚官方的那个IDE 不用VS的  分不多  见笑
------解决方案--------------------
直接去官网下载Qt5 (MinGW)版本,安装完既可用。
------解决方案--------------------
不知道你是在什么平台下做,我是在嵌入式linux 下做的,最近也在学习,刚刚搭建了一个环境,写了一点总结
不知道能不能帮到你。
不能放附件吗???

在ubuntu下搭建嵌入式系统的 Qt 开发环境
原则上,搭建的Qt开发平台可以采用如下图所示,分别包括 Creator 和 Library两个部分。Creator以一种图形化的方式实现IDE环境,通过调用基于C++的Library实现相关功能。如果仅在PC端进行开发,则如下的结构即可。 


实际上,如果对命令行方式非常熟悉的话,不需要Creator的图形界面,直接采用命令行方式进行编辑,生成makefile,进行编译和运行等。
在嵌入式开发方面,网络上大部分推荐采用以下结构搭建开发的环境,如下图所示:




分别安装 Creator 和所选择的 Library ,之后在 Creator 中添加相关的“构建套件”,既可以在统一平台下对不同目标系统进行编译。
开始阶段,由于对Qt缺乏了解,就直接利用下载的Qt5进行安装,在其中已经包含的QtCreator3.0.x 和 Lib(for linux PC),另外再单独编译安装了一套 Lib(for Embedded),将该支持库加入 QtCreator中对应的构造套件中,如下图所示:





怀疑:由于在 Qt Lib 4.8.5 中,官方提供的 Embedded 和 Linux 为同一文件,那在Qt5.2.1中,包含的 Linux Lib 是否已经统一了 x86 Linux 和 Embedded ?有待验证。
经证实,在Qt5.2.1中,可以下载 qt-everywhere-source-src-5.2.1.tar.gz,可以凭借同一套源码,通过不同的配置,生成 PC 端和 ARM 端的两套对应的lib。
需要注意的是,在qt4.8.5的配置文件中,采用如下参数制定编译 embedded 版本:
./configure -embedded arm 
但升级到5.2.1之后,该命令被取消,而采用如下方式配置:
./configure -xplatform linux-arm-configFile
linux-arm-configFile 为用户指定的配置文件。
相关的配置可以参考如下链接:http://blog.csdn.net/kkvvll2/article/details/23468533
考虑到4.8.5推出时间比较长,相关的技术资料比较丰富,目前暂时采用
(1) qt-creator-3.1.0,单独安装QCreator。
(2) qt-everywhere-source-src-4.8.5 的源码,分别编译两套Qt库,分别用于PC端和ARM端的开发。
文件结构如下:
/ //根
|---/opt

------解决方案--------------------
---/qt-arm-4.8.5  // 指定的Qt库

------解决方案--------------------
---/qt-pc-4.8.5   // 指定的Qt库

|---/work

------解决方案--------------------
---/qt-install-pkgs // 保存安装文件 qt-everywhere-source-src-4.8.5.tar.gz 

------解决方案--------------------
---/qt-arm          // 解压安装文件,执行 ./configure ….,编译,安装ARM端Qt库

------解决方案--------------------
---/qt-pc // 解压安装文件,执行 ./configure ….,编译,安装PC端Qt库


安装流程:
(一)安装 Qt Creator 3.1.0
1. 从qt-project.org下载
下载的文件为*.run文件。首先,修改文件属性为可执行,如下:
  ~$sudo chmod 777 *******.run
之后,执行该文件
 ~$./*********.run
在安装之后,就可以看到Qt的IDE,但目前该IDE由于没有配置编译环境,只能够编辑代码而不能编译调试。接下来就需要分别编译不同平台下的相关工具和库函数,才能进行实际开发试验。

(二)安装 Qt/Embedded-4.8.5 
需要说明的是,在Qt Project 的链接里面,Qt libraries 4.8.5 for Linux/X11 和 Qt libraries 4.8.5 for embedded Linux 实际上指向的是同一个文件—— qt-everywhere-opensource-src-4.8.5.tar.gz,下载即可。
基本流程:解压 → 配置 → 生成makefile → 编译 → 安装 五个阶段。
(1)解压文件,执行命令:
tar -xvzf qt-everywhere-opensource-src-x.x.x.tar.gz 
将安装文件解压到 /work/qt-arm 中。
(2)转入该文件夹下,cd qt-everywhere-opensource-src-4.8.3
并执行如下命令:
./configure -prefix /opt/qt-arm-4.8.5 -embedded arm -xplatform qws/linux-arm-g++ -no-webkit
[另采用如下设置:
./configure -prefix /opt/qt-arm-4.8.5-s -embedded arm -opensource -confirm-license -release -static -fast -nomake demos -nomake examples -nomake tools -depths 16,24,32 -no-qt3support -no-xmlpatterns -no-multimedia -no-audio-backend -no-phonon -no-phonon-backend -no-svg -no-webkit -no-javascript-jit -no-script -no-scripttools -no-declarative -no-declarative-debug -no-mmx -no-3dnow -no-sse -no-sse2 -no-sse3 -no-sse4.1 -no-sse4.2 -no-avx -no-neon -optimized-qmake -no-pch -no-sql-sqlite -qt-libjpeg -qt-zlib -no-libpng -no-libtiff -no-libmng -no-opengl -no-openssl -no-nis -no-cups -no-iconv -no-dbus -no-glib -no-xcursor -no-xfixes -no-xrandr -no-xrender -no-separate-debug-info -xplatform qws/linux-arm-g++
]
说明:由于对Qt并不熟悉,并没有对Qt的模块做过多的裁剪,耗时在2个小时左右。仅由于在编译过程中报错,通过查询得知该错误与webkit模块有关,而当前项目基本不会涉及到网络浏览方面的内容,故决定剪裁该模块,之后编译顺利通过。
(3)生成makefile,执行命令:
make
(4)根据生成的makefile文件,进行按照,执行命令:
make install

对PC端也是类似的过程:
首先将安装文件解压到 /work/qt-pc 中,在该路径下执行./configure,为了保持与ARM端工具保持一致,配置参数如下:
./configure -prefix /opt/qt-pc-4.8.5 -no-webkit
在本人的环境下编译2个小时左右完成。之后同样执行 make进行编译,执行make install 进行安装。

具体配置参数的含义参考如下链接:[2]http://blog.csdn.net/li_hai/article/details/5006454

(三)添加构造套件
选择“项目”,通过“添加构造套件”或“管理构造套件”,进入套件的编辑页面。在如下页面中,选择“构建和运行”,分别编辑“构建套件”,“Qt Visions”和“编译器”页面,添加 ARM-LINUX-G++ 编译器,
以及刚刚编译获得的qmake。
在完成如上所示的设置后,既可以看到新增的构建套件,名称设置为Qt-ARM,以区别于桌面目标系统。

在如下图所示位置,可以选择不同的目标平台,分别包括:桌面系统的调试和发布版本,远程主机(arm linux target)的调试和发布版本。
  相关解决方案