最近对
QT
非常感兴趣,一个跨平台的编程语言,可以一次编写,到处编译,但是对环境的搭建好像比较费劲,我是这样感觉,不知道其他同志们是什么感触。
在
ubuntu
下配制
QT
开发环境,还算是顺利。原来有一定的
RH9
的使用经验,上手还是很快的。但是在
WINDOWS
下配制
QT
的时候到是出现了一些问题,一共编译了3次,第2次
编译成功了,但是为了研究问题所在,所以进行第3次编译,这个过程不是很麻烦,不过时间很长,有可能和电脑硬件配制有关系吧。
下面介绍一下配制环境的情况:
1 准备工具
(1)
Microsoft Visual Studio
2005 TeamSuit
最好有
SP1
补丁。
(2)
qt-sdk-win-opensource-2009.03.exe
这是
QT
4
.
5
.
2
版本。
(3)
qt-vsintegration-1.4.2.exe
这是
QT
的
VS
插件,当然你也可以用
qt-vs-addin-1.1.2.exe
,但是这个好像只支持英文版本的
VS
。
准备工作就到这里了,现在开始吧,祝兄弟们一切顺利!!
2 安装工作
(1)安装
VS2005,
打
SP1
补丁,这个对于大家来说很容易了。需要就是时间。
(2)安装
qt-sdk-win-opensource-2009.03.exe
,我的安装目录是
D:/QT-4.5.2/Qt
,但是在这个目
录下还有一个
qt
目录,这才是我们后边需要工作的目录。
(3)安装
qt-vsintegration-1.4.2.exe
,安装后,在
VS
的菜单栏上会有一个
QT
菜单,在“工具”
-
》“选项”里也有一个
QT
选项。这是我们后边要设置的。
3 配制工作
(1)
给电脑配制环境变量,在系统变量里(我的电脑
->
属性
->
高级)设置如下变量:
PATH:
D:/QT-4.5.2/Qt/qt/bin;D:/QT-4.5.2/Qt/bin;D:/QT-4.5.2/Qt/mingw/bin;D:/QT-4.5.2/Qt/qt/lib
LIB:
D:/QT-4.5.2/Qt/qt/lib
INCLUDE:
D:/QT-4.5.2/Qt/qt/include;D:/QT-4.5.2/Qt/mingw/include
QMAKESPEC:
win32-msvc2005
QTDIR:
D:/QT-4.5.2/Qt/qt
这里有重复设置和冗余设置,但是要保证一次性配制成功,最好把这些
设置上,这只是个人意见,根据自己的实际情况,可以自行选择。但是
qt
目录下的
bin
、
include
、
lib
和
QMAKESPEC
、
QTDIR
,估计是必须设置的。
(2)
在
VS
的“工具”
-
》“选项”
-
》“
QT
”
-
》“
Builds
”设置如下目录:
D:/QT-4.5.2/Qt/qt
重要
D:/QT-4.5.2/Qt/qt/bin
D:/QT-4.5.2/Qt/qt/include
D:/QT-4.5.2/Qt/qt/lib
后三个有可能不需要,大家可以试一下,我实在不想试了。
4 编译源码工作
在编译源码之前,需要向兄弟们说明几个问题,也是自己在这个过程遇
到的。
A
:
XP
下的“命令提示符”,也就是
CMD
,就没有“
nmake
”命令的。
B
:在编译过程中,有可能会遇到如下问题:
QtWebKitd4.lib
无法解析的外部符号
QNetworkReplyHandler.obj : error LNK2001: unresolved external
symbol “public: vi
rtual struct QMetaObject const * __thiscall
WebCore::FormDataIODevice::metaObjec
t(void)const ”
(?metaObject@FormDataIODevice@WebCore@@UBEPBUQMetaObject@@XZ)
QNetworkReplyHandler.obj
: error LNK2001: unresolved external symbol “public: vi
rtual void *
__thiscall WebCore::FormDataIODevice::qt_metacast(char const *)” (?
qt_metacast@FormDataIODevice@WebCore@@UAEPAXPBD@Z)
这是因为
src/3rdparty/webkit/WebCore/tmp/moc/{debug,release}_shared/mocinclude.tmp
临时文件造成的,把这两目录下的该文件删除即可,在编译的时候会自动生成该文件。在安装完成后,就
有这两个文件,在编译之前见意删除掉。
C
:进入到
%QTDIR%/mkspecs/win32-msvc2005/
目录下,打开
qmake.conf
文件找到
19
行的
QMAKE_CFLAGS = -nologo -Zm200 -Zc:wchar_t-
,删除后面的
-Zc:wchar_t-
选项,主要是为了保持
标准兼容性以及和其他代码的兼容性,否则会出现
Qt4
中采用了
wchar_t
的函数不能够接受没有
-Zc:wchar_t
选项下的
wchar_t
类型;这一步,我并没有做,也是偶尔在网
上遇到的。大家可以参考。
下面就开始编译吧。
(1)
VS
的“
Visual Studio 2005
命令提示”工具。进入“
D:/QT-4.5.2/Qt/qt
”
目录。
(2)
输入配制命令,如下:
A:configure -debug-and-release -no-stl -no-sql-sqlite -qt-libjpeg
-qt-gif -platform win32-msvc2005
B:configure -debug-and-release -platform win32-msvc2005 -no-stl -no-dsp
-vcproj -no-phonon
C:configure -platform
win32-msvc2005
我用的是
C
号命令。大家可以看
configure
的帮助,不需要的可以不编译。如果初学者建议用
C
号命令。回车后需要一段时间,大家可以喝怀茶。
(3)
接下来输入“
nmake
”,回车。这步需要漫长的过程。请耐
心等待。相信大家对以上进行了设置,这步只是等待,不会有什么问题的。
(4)
编译完成后,大家可以执行
nmake clean
清除编译的
中间文件,
nmake confclean
清除配制文件。但是我在用
nmake confclean
命
令后,用
VS
建立
QT
项目,出现问题。用
nmake clean
这个命令是绝对没有问题的。如果兄弟的空间比较富裕,完全可以不执行这些操作。
5 完成
.
大家可以建立
QT
GUI
项目了。
革命尚未成功,同志仍需努力。
网名:唯笑志在
Q
Q
:
GG
搜吧