在vc++、vs2005下配置qt的編譯環境

 安裝文件我使用的是《C++ GUI QT3編程》所附帶光盤中的windows版的安裝程序,當然大家也可以使用別的windows版本,和安裝一般的應用程序沒有什麼分別的。不過注意在安裝的過程中最好不要安裝在中文的目錄下,否則可能造成安裝失敗的,這裏我選擇的是d:/study/路徑。中間需要指出你的visual studio的路徑,一般都在c盤下,這個自己找吧。

          安裝成功後,就可以打開vc了,建立一個工程和源文件,輸入如下代碼:

#include<qapplication.h>
#include<qlabel.h>
int main(int argc,char *argv[])
{
QApplication app(argc,argv);
QLabel *label=new QLabel("hello,qt!",0);
app.setMainWidget(label);
label->show();
return app.exec();
}

然後就是設置運行的目錄了,在c++的工具菜單中選擇選項-〉目錄

然後分別添加新的include目錄爲d:/study/qt3.0/include

添加新的library目錄爲d:/study/qt3.0/lib

然後比較關鍵的一步就是調出qt的工具欄,工具-〉定製-〉附加項和宏文件中勾選Qmsdev developer studio,然後關閉。

網上常見的方法中,常常會在工程-〉設置-〉連接中添加一些lib文件,其實根本沒有這個必要,這樣做不僅可能導致失敗,而且即使成功也很麻煩。每次編譯新程序都得手工添加。做到以上這些點的話,然後單擊qt工具欄中的倒數第二個按鈕,告訴編譯器你要在這個程序中使用qt。此時就可以成功的編譯了。沒有進行這個操作的時候,連接時會出現諸如:

Debug/df.exe : fatal error LNK1120: 146 unresolved externals

的錯誤。點擊按鈕後在左邊的文件試圖中會多出一個外部連接庫的文件夾,其實這個按鈕的意思就是自動的將一些連接庫給你添加到vc中了,不信的話你可以再打開工程的設置-〉連接,就可以看到這是的lib已經變了很多。這樣的話就可以再vc下輕鬆的編譯qt了。

我也是一個初學者,大家如果發現什麼錯誤的話請多多指教,平時也可以到這裏和我交流。希望大家把自己的平時的經驗都共享出來,好讓學習qt的新人少走寫彎路。

下面是我在網上搜集的一些關於這個主題的資料文檔,如果上面的方法行不通的話,希望下面的資料對大家有幫助。以下文檔版權歸原作者所有。

資料一、

如何在vc2005下編譯和使用Qt<?XML:NAMESPACE PREFIX = ST1 />4.2.0

簡介

在本文中,我將一步一步地講解如何在vc2005下編譯Qt以及簡單介紹如何在vc2005下使用Qt

先決條件

1 Vc2005。任何一款的vc2005編譯器都可以,甚至是Express Edition

2 下載QtOpenSource版本。http://www.trolltech.com/developer/downloads/qt/windows

3 下載unofficial patch for QT4http://sourceforge.net/project/showfiles.php?group_id=49109

下載其中的acs4qt42p3.zip

環境變量的設置

第一步 Apply qt-win patch

vc2005中打開Tools---Option對話框,設置如下:
http://wiki.qgis.org/qgiswiki/Building_QT_4_with_Visual_C%2B%2B_2005?action=AttachFile&do=view&target=msvc-include-path-settings.png

http://wiki.qgis.org/qgiswiki/Building_QT_4_with_Visual_C%2B%2B_2005?action=AttachFile&do=view&target=msvc-lib-path-settings.png





QtVC2005下應用簡單示範在E盤下建立文件夾test,建立test.cpp文件,寫入:
#include <QApplication>#include <QLabel>
int main(int argc, char *argv[])
{     
QApplication app(argc, argv);     
QLabel *label = new QLabel("Hello Qt!");     
label->show();     
return app.exec();
}
在命令行中移動到E:/test
依次輸入
:
qmake -project
qmake -project -t vcapp -o projectname
qmake projectname

其中projectname爲項目名,可以爲任意你輸入的值。這是test文件夾下產生了*.vcproj,即可由vc2005打開編譯運行

資料二、

我用的是WINXP,VC6,安裝了QT    noncommercial版本,readme裏面詳細介紹了利用VC開發QT的做法,這樣說的   
   1. Start    Visual    Studio    if    it    isn't    already    running.     
   2. Click    Tools|Customize    to    launch    the    Customize    dialog.     
   3. Click    the    Add-ins    and    Macro    Files    tab.     
   4. Ensure    the    checkbox    to    the    left    of    the    "QMsDev    Developer    Studio-Add-In"    add-in    is    checked.   
   5. Click    Close.     
  
但是我在QT的按照包裏面怎麼也找不到這個add-in,這是怎麼回事.

資料三、

【原創】Qt 3.3.5 for win msvc下編譯實例 [打印本頁]

我不知道大家都是怎麼裝的,反正我花了好多時間才搞定。

我找到的QT3.3.5版,顯然這不是最新的,不過因爲最新的需要用mingGW,而我的導師似乎不是很樂意我用非VC的東西,所以我只好用了這個老版本。另外聽罈子里人說4.0.1designer不像3.3.5一樣提供代碼編輯器,我想不提供編輯器總是很不爽的,不過因爲還未試過,也不知道那個編輯器到底有用沒。

首先下載QT3.3.5 for win:
3.3.5 for win
看起來是一個通過cygwin移植到windows裏的kde下的版本。我在sourceforce找到過3.3.3-2 .exe 直接安裝版本,http://sourceforge.net/project/showfiles.php?group_id=49109,但似乎這個編譯後的版本沒有加入需要的一些插件,使得安裝後的designer提示找不到編輯代碼的插件。

因此我決定自己從src編譯,sourceforce上有3.3.4版的源代碼,
3.3.5版本可以在這裏找到:
http://webdev.cegit.de/snapshots/qtwin/
找最新的下載(最新的更新竟然就比這篇帖子早4天!),解壓之後就可以準備用msvc.net編譯了。

然後我們開始準備編譯這個sanavabitch:
我不知道看官的msvc是怎麼設置環境變量的,但我的msvc.net十分惡劣地把

INCLUDE
LIB設置到了vc.net下一個sdk/1.1/的目錄裏,這將導致執行configure-msvc.net.bat後系統提示找不到各種.lib.h。因此我們需要做的是在執行configure之前設定合適的環境變量:
set INCLUDE=C:/Program Files/Microsoft Visual Studio .NET 2003/Vc7/PlatformSDK/include;C:/Program Files/Microsoft Visual Studio .NET 2003/Vc7/include;c:/QT/QT-3/misc/include
以及
set LIB=C:/Program Files/Microsoft Visual Studio .NET 2003/Vc7/PlatformSDK/Lib;C:/Program Files/Microsoft Visual Studio .NET 2003/Vc7/Lib
以及
set QTDIR=c:/QT/QT-3
以及
set path=%path%;Visual Studio .NET 2003/Vc7/bin;C:/Program Files/Microsoft Visual Studio .NET 2003/Vc7/PlatformSDK/bin

設定好了就可以順利編譯拉!
執行:
configure-msvc.net.bat

編譯好了之後有兩個選擇:
A
,自己創建各種編譯環境並手工添加到我的電腦-〉屬性-〉高級-〉環境變量
B
,偷懶的做法,下載一次sourceforce上拿到的那個 QT3.3.3-2.exe安裝版,運行安裝到你最終想要安裝的目錄,然後把你自己編譯的那個完整版拷貝過去覆蓋那個不完整的版本……

之後要把新裝好的QT集成到msvc中,這也有兩種做法:

A
,在每次新建project的屬性裏添加include目錄和lib目錄
B
,我的做法是將這些目錄添加到默認屬性裏——msvc->tools->options->projects->VC++ Directories裏分別添加好QTinlcude, bin lib目錄

重起,結局一切正常,目前正在workout怎麼把designer集成到msvcide

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章