国产精品电影_久久视频免费_欧美日韩国产激情_成年人视频免费在线播放_日本久久亚洲电影_久久都是精品_66av99_九色精品美女在线_蜜臀a∨国产成人精品_冲田杏梨av在线_欧美精品在线一区二区三区_麻豆mv在线看

解析 VC 2005 下編譯安裝并開發 QT 4.4.3 應用程序

移動開發
本文介紹的是解析 VC 2005 下編譯安裝并開發 QT 4.4.3 應用程序,很詳細的介紹,先來看內容。

VC 2005 下編譯安裝并開發 QT 4.4.3 應用程序是本文要介紹的內容,一部分時從壇子里看的,一部分時心得,不多說,先來看內容。最近研究webkit,順便研究了一下QT。發現網上流傳的一個轉帖《VC 2005 下如何編譯安裝并開發 QT 4.4.0 應用程序》

Qt 是一個跨平臺的C++圖形用戶界面庫,由挪威TrollTech公司出品,Qt支持所有的UNIX系統,包括Linux系統,還支持WinNT/Win2k、Windows 95/98平臺。

本文將使用簡單的幾個步驟說明在VC 2005下如何編譯安裝并開發QT應用程序:

一、下載及安裝

1. 從官方網站http://trolltech.com/lang/cn/downloads/open-source-downloads下載QT最新版本源代碼,ftp://ftp.trolltech.com/qt/source/qt-win-opensource-src-4.4.0.zip,假定解壓到D:\Qt\4.4.0目錄;

2. 從VC 2005的安裝路徑找到vsvars32.bat,例如:在E:\Program Files\Microsoft Visual Studio 8\Common7\Tools,運行cmd,

  1. C:\> E:  
  2. E:\> "E:\Program Files\Microsoft Visual Studio 8\Common7\Tools"  
  3. E:\Program Files\Microsoft Visual Studio 8\Common7\Tools> vsvars32.bat  
  4. E:\Program Files\Microsoft Visual Studio 8\Common7\Tools> D:  
  5. D:\> cd D:\Qt\4.4.0  
  6. D:\Qt\4.4.0> configure -debug-and-release -static  
  7. D:\Qt\4.4.0> nmake 

configure -debug-and-release -static參數的意義是告訴QT同時編譯為Debug和Release兩個版本的靜態鏈接庫,不指定參數則編譯為Debug版本的動態鏈接庫。 configure大約需要十幾分鐘,nmake則大約需要1小時左右,視你的電腦性能而定。

3. 將Qt路徑添加到VC編譯環境中,工具->選項->項目和解決方案->VC++目錄,在包含文件一欄添加: D:\Qt\4.4.0\include\QtGui;D:\Qt\4.4.0\include\QtCore;D:\Qt\4.4.0\include,在庫文件一欄添加D:\Qt\4.4.0\lib;將QT安裝路徑添加到Path系統環境變量中,例如:D:\Qt\4.4.0\bin;

二、交叉編譯

1. 啟動VC,創建一個Hello Qt工程,將工程設置改為使用多字節字符集,因為Qt Application的入口函數不是Unicode的;

2. 啟動Qt Designer,新建窗體->選擇對話框窗體(第一個選擇項),在新建的對話框上面放一個Label控件,將其Title修改為“Hello Qt!”,將該窗體保存到剛才用VC建立的Hello Qt工程目錄,文件名為Hello.ui;

3. 將Hello.ui作為源文件添加到Hello Qt工程中,在Hello.ui上點擊右鍵->屬性,在屬性對話框中選擇自定義生成步驟->常規,在命令行一欄輸入:uic.exe Hello.ui -o HelloUi.h,說明一欄輸入:正在編譯Hello.ui ,在輸出一欄輸入:HelloUi.h,在附加依賴項一欄輸入:uic.exe;Hello.ui,點擊確定;

如果是QObject的子類,則要用:moc.exe XXX.h -o debug/moc_XXX.cpp命令。 例如:

  1. E:\backup20080122\qt-win-opensource-src-4.4.3\bin\moc.exe -DUNICODE -DWIN32 -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_GUI_LIB -DQT_CORE_LIB 
  2. -DQT_THREAD_SUPPORT -I"e:\backup20080122\qt-win-opensource-src-4.4.3\include\QtCore" 
  3. -I"e:\backup20080122\qt-win-opensource-src-4.4.3\include\QtCore" -I"e:\backup20080122\qt-win-opensource-src-4.4.3\include\QtGui" 
  4. -I"e:\backup20080122\qt-win-opensource-src-4.4.3\include\QtGui" -I"e:\backup20080122\qt-win-opensource-src-4.4.3\include" -I"."
  5. -I"e:\backup20080122\qt-win-opensource-src-4.4.3\include\ActiveQt" -I"debug" -I"." 
  6. -Ie:\backup20080122\qt-win-opensource-src-4.4.3\mkspecs\win32-msvc2005 -D_MSC_VER=1400 
  7. -DWIN32 WebViewCollection.h -o debug\moc_WebViewCollection.cpp 

注意:也可以不使用手工添加方式添加編譯ui文件,直接使用qmake編譯成VC工程,但這樣會破壞原來的工程設置,因為當ui文件修改或添加新的ui后需要重新qmake,重新生成VC工程,因此這里采用了手工添加并設置編譯腳本的方式,qmake的用法如下:

  1. D:\Hello Qt> qmake -project -t vcapp -o HelloQt.pro  
  2. D:\Hello Qt> qmake 

不需要指定ui文件,qmake會將當前目錄所有的ui文件以及C++文件創建一個VC工程。另外QT 4.4是對VC各個版本都兼容的,VC6、VC2003、VC2005、VC2008,編譯安裝步驟都是一致的。

4、在Hello.ui上點擊右鍵->編譯,將在當前工程目錄生成HelloUi.h文件;

5、注意:此時需要將生成的HelloUi.h文件添加到工程中。 如果是QObject子類生成的moc_XXX.cpp,也需要添加到工程中。

否則會出現:QtCore.lib(qtimer.obj) : error LNK2001: unresolved external symbol __imp___invalid_parameter_noinfo之類的錯誤。

6、打開Hello Qt.cpp,在main函數添加啟動代碼,完整代碼如下:

  1. // Hello Qt.cpp : 定義控制臺應用程序的入口點。  
  2. #include "stdafx.h"  
  3. #include "HelloUi.h"   // ui文件編譯生成的C++文件  
  4. #include <QApplication> 
  5. int _tmain(int argc, _TCHAR* argv[])  
  6. {  
  7. QApplication app(argc, argv);  
  8. QDialog * dlg = new QDialog(); // Qt 窗口對象會自動回收所有的子窗口對象,這里的dlg將被作為最外層窗口,
  9. 將由QApplication進行回收,因此Qt窗口只能在堆分配對象,且不必使用delete。  
  10. Ui::Dialog ui;   // Dialog為ui文件編譯生成的C++類,參見HelloUi.h  
  11. ui.setupUi(dlg);  
  12. dlg->show();  
  13. return app.exec();  

在工程設置附加依賴項中添加QtCore.lib QtGui.lib,編譯工程,運行即可出現Hello Qt程序。

Windows程序里面的消息機制,在MAC平臺則是蘋果事件,各平臺的驅動方式各異,Qt則將這些不一致的平臺機制統一起來,形成了信號和槽機制,來處理各種系統事件,以實現跨平臺的目的,因此Qt程序幾乎不經過任何修改,便可以在其它平臺編譯通過。

但是我用其中的方法時,編譯時不能通過:

  1. QtCore.lib(qtimer.obj) : error LNK2001: unresolved external symbol __imp___invalid_parameter_noinfo 

(后來才知道,這是因為沒有把moc生成的moc_XXX.cpp文件添加到工程導致的)

#p#

采用qmake方法才正常編譯通過。下面把我的方法記錄如下:

一、下載及安裝

1、從官方網站http://trolltech.com/lang/cn/downloads/open-source-downloads下載QT最新版本源代碼,ftp://ftp.trolltech.com/qt/source/qt-win-opensource-src-4.4.0.zip,假定解壓到D:\Qt\4.4.0目錄;

2. 從VC 2005的安裝路徑找到vsvars32.bat,例如:在E:\Program Files\Microsoft Visual Studio 8\Common7\Tools,運行cmd,

  1. C:\> E:  
  2. E:\> "E:\Program Files\Microsoft Visual Studio 8\Common7\Tools"  
  3. E:\Program Files\Microsoft Visual Studio 8\Common7\Tools> vsvars32.bat  
  4. E:\Program Files\Microsoft Visual Studio 8\Common7\Tools> D:  
  5. D:\> cd D:\Qt\4.4.3  
  6. D:\Qt\4.4.3> configure -debug-and-release -static  
  7. D:\Qt\4.4.3> nmake 

configure -debug-and-release -static參數的意義是告訴QT同時編譯為Debug和Release兩個版本的靜態鏈接庫,不指定參數則編譯為Debug版本的動態鏈接庫。 configure大約需要十幾分鐘,nmake則大約需要2小時左右,視你的電腦性能而定。

3、設置環境變量:

我的電腦>屬性>高級>環境變量>用戶變量里面設置幾個變量:

PATH中增加C:\Qt\4.4.3\bin(如果沒有就創建),

創建QMAKESPEC值為 win32-msvc2005,這個值還是根據你要生成的Vs版本,6.0 使用win32-msvc, 2003 使用win32-msvc.net, 2005就是 win32-msvc2005  

創建QTDIR值為 C:\Qt\4.4.3

如果你機器上安裝多個版本的QT,就通過這三個環境變量來切換了,我同時有C:\Qt\4.0.0,那么就把那些前綴都換成C:\Qt\4.0.0,就使用4.0了。最后為了使的你剛才修改的環境變量生效,重啟cmd,可以通過C:\> qmake -v來看你使用的QT版本。

二、交叉編譯

1、啟動Qt Designer,新建窗體->選擇對話框窗體(第一個選擇項),在新建的對話框上面放一個Label控件,將其Title修改為“Hello Qt!”,將該窗體保存到HelloQT目錄下,文件名為HelloQT.ui;

2、運行命令提示行,到HelloQT目錄下:

3、運行 

  1. HelloQT> qmake -project -t vcapp -o HelloQT.pro  
  2.             HelloQT> qmake 

4、此時,HelloQt文件夾下生成了VC工程文件:HelloQT.vcproj; 此外還有生成的ui_helloQT.h文件

5、將此工程添加到你的解決方案中。

6、向工程中添加helloQT.cpp

  1. // helloQT.cpp : Defines the entry point for the console application.  
  2. // ui文件編譯生成的C++文件  
  3. #include "ui_helloQT.h"  
  4. int main(int argc, char* argv[])  
  5. {  
  6.     QApplication app(argc, argv);  
  7.     QDialog * dlg = new QDialog(); // Qt 窗口對象會自動回收所有的子窗口對象,這里的dlg將被作為最外層窗口,
  8. 將由QApplication進行回收,因此Qt窗口只能在堆分配對象,且不必使用delete。  
  9.     Ui::Dialog ui;   // Dialog為ui文件編譯生成的C++類,參見HelloUi.h  
  10.     ui.setupUi(dlg);  
  11.     dlg->show();  
  12.     return app.exec();  

編譯,運行通過。

以上基本上可以開發簡單的程序了,如果需要使用opengl等其他的,自己google下吧。有米的人也可以直接購買QT的商業版,可以直接集成到VS里面去,有向導等東西。我使用Qt 4.0的還是比較爽的。自己有時間好好看看examples里面的例子,開發的時候也可以作為參考,很好的資料。

小結:VC 2005 下編譯安裝并開發 QT 4.4.3 應用程序的內容介紹完了,希望本文對你有多幫助,更多資料請參考編輯推薦!

責任編輯:zhaolei 來源: 互聯網
相關推薦

2011-06-09 09:12:12

QT symbian

2010-01-11 10:15:09

FedoraFedora 12Mplayer

2011-05-03 09:14:45

QtOvi商店Symbian

2010-01-26 13:29:46

VC++應用程序

2011-08-12 14:54:45

iPhone委托

2010-08-12 15:52:34

Flex應用程序

2009-12-10 13:47:06

VS2005應用程序

2011-06-09 14:56:53

QT 編譯

2011-07-02 14:03:12

Linux Qt

2010-01-22 10:44:10

VC++應用程序

2010-08-12 15:44:25

Flex應用程序

2011-06-14 14:57:06

QT Python GUI

2021-02-05 11:55:37

PythonWindows平臺代碼

2013-02-21 14:14:40

開發Tizen

2013-02-21 14:15:41

開發Tizen

2009-12-21 15:48:29

WCF應用程序

2010-03-02 14:24:00

Android應用程序

2011-09-01 10:01:35

PhoneGap應用程序GoodDay

2012-02-08 15:06:31

ibmdw

2022-09-19 00:37:13

SaaS云計算開發
點贊
收藏

51CTO技術棧公眾號

中文字幕一区二区精品| 日韩三级电影网| 在线观看h网址| 国产精品宾馆| 三上亚洲一区二区| 天天影视涩香欲综合网 | 国产精品亚洲第一区在线暖暖韩国 | av在线一区二区三区| 日韩av高清不卡| 国产精品夜夜夜一区二区三区尤| 国产97免费视| 成人高清av| 日产精品久久久一区二区福利| 日本黄色精品| 国产亚洲精品自在久久| 国产精品美女| 成人久久18免费网站漫画| 51亚洲精品| 91av在线免费观看视频| 国产一区二区视频在线免费观看 | 波多野结衣家庭教师在线| 国产欧美日韩精品一区二区三区 | 日韩av在线高清| 日本免费高清一区二区| 国产美女撒尿一区二区| 色成人在线视频| 国产成人免费高清视频| 日韩精品中文字幕一区二区 | 欧美激情综合色综合啪啪| 神马久久久久久| 五月天色综合| 国产韩国精品一区二区三区| 久久午夜精品| 免费看日本毛片| 亚洲成人av电影在线| 色婷婷视频在线观看| 日韩电影中文字幕| 国产99久久精品一区二区300| 91色中文字幕| 国产一区免费电影| 亚洲这里只有精品| 久久激情五月激情| 免费久久一级欧美特大黄| 99精品国产高清一区二区麻豆| 在线精品91av| 丁香婷婷在线观看| 亚洲午夜羞羞片| 宅男午夜视频| 亚洲欧美视频一区| 在线观看免费视频高清游戏推荐| 激情综合网激情| 国产中文欧美精品| 亚洲高清影视| 粗暴蹂躏中文一区二区三区| free性护士videos欧美| 欧美猛交ⅹxxx乱大交视频| 国精一区二区| 国产99久久久国产精品潘金| 久久久久日韩精品久久久男男| 99精品国产99久久久久久福利| 波多野结衣av在线| 欧美床上激情在线观看| 在线亚洲观看| 在线观影网站| 欧美大片在线看| 国产老肥熟一区二区三区| 日本成本人片免费观看| 欧美日韩精品二区第二页| 欧美三级网址| 91精品久久久久久| 欧美国产高潮xxxx1819| 奇米777四色影视在线看| 中文字幕一区二区三区在线不卡 | 99精品网站| 国产精品香蕉在线观看| 亚洲美女久久| 国产精品视频福利| 亚洲成av人电影| 欧美一级黄色影院| 国产一区二区日韩精品欧美精品| 亚洲伊人网站| 91麻豆国产精品久久| 久久综合色播| 97视频国产在线| 中文字幕亚洲区| 一区二区三区四区电影| 麻豆tv入口在线看| 中文字幕成人一区| 亚洲国产中文字幕在线观看| 精品在线播放免费| 制服丝袜专区在线| 国产精品一区免费观看| 中文字幕乱码日本亚洲一区二区 | 九色视频在线播放| 午夜精品成人在线视频| 超碰在线一区| 国内精品视频在线播放| 成人美女视频在线观看18| 婷婷国产在线| 97香蕉久久超级碰碰高清版| 久久成人麻豆午夜电影| 久久综合网导航| 神马午夜伦理影院| xxxx性欧美| 色综合久久久久久久久| 亚洲国产美女搞黄色| 天堂久久久久va久久久久| 丁香花电影在线观看完整版| www.中文字幕在线| 亚洲精品亚洲人成在线观看| 在线日韩影院| 成人伊人精品色xxxx视频| 91亚洲精华国产精华精华液| 中日韩高清电影网| 亚洲一区二区三区视频播放| 中文字幕在线一区二区三区| 全国精品免费看| 狠狠操精品视频| 精品国产拍在线观看| 久久成人18免费观看| av中文字幕在线观看第一页 | 国产欧美日韩精品在线| 亚洲色图欧美| 国产高清自拍一区| 玖玖国产精品视频| 香蕉人人精品| 免费污视频在线一区| 你懂的在线网址| 欧美一级黄色片视频| 久久国产精品久久精品国产| 国产精欧美一区二区三区| 日韩精品在线私人| 欧美三级免费观看| 久久免费精品国产久精品久久久久| 国产精品久久久久久久久久辛辛| 超碰在线中文| 久久久久九九九| 精品国偷自产在线| 亚洲成**性毛茸茸| 欧美激情一二三区| 日本系列欧美系列| 国产亚洲字幕| 国产免费av高清在线| 青草网在线观看| 久久久午夜视频| 黄色精品一区二区| 日本午夜一区二区| 精品视频在线一区| 黑人精品视频| 日韩精品你懂的| 国产精品999视频| 日本在线xxx| 成年人免费在线播放| 97影视在线观看| youjizzjizz亚洲| 日韩成人亚洲| 日韩av久操| 欧美激情偷拍| 美女高潮久久久| 91视频xxxx| 色狠狠色噜噜噜综合网| 欧美浪妇xxxx高跟鞋交| 亚洲第一色中文字幕| 精品亚洲精品福利线在观看| 精品视频www| 精品在线小视频| 亚洲图片欧美日产| 日韩欧美国产免费播放| 欧美日韩一区二区在线播放| 天天操天天色综合| 欧美色网站导航| 欧美性受极品xxxx喷水| 色婷婷亚洲精品| 亚洲精品成人悠悠色影视| 99热精品国产| 亚洲三级小视频| 91亚洲精品乱码久久久久久蜜桃| av一区二区在线播放| 三上悠亚激情av一区二区三区 | 无遮挡爽大片在线观看视频| 日韩三级电影网| 日韩黄色影片| jizz视频在线观看| 日本一区二区三区电影| 国产在线1区| 99久久99九九99九九九| 中国成人一区| 亚洲蜜桃精久久久久久久| 中文字幕免费精品| 国产又大又硬又粗| 国产毛片av在线| 清纯唯美激情亚洲| 亚洲欧美综合国产精品一区| 国产综合久久久久久鬼色 | 欧美视频精品一区| 正在播放一区二区| 国产精品久久久久7777婷婷| 97干在线视频| 青青青草原在线| 天然素人一区二区视频|