Jak zapewne większość wie Qt jest to zestaw bibliotek programistycznych wspomagających tworzenie aplikacji w C++, Java ... , która może być wykorzystywana na różnych systemach operacyjnych (tzw. idea 'cross-platform'). O ile kompilacja w środowisku Linux jest dosyć prosta, należy z repozytoriów zainstalować Qt i za pomocą dwóch komend kompilować napisany program, tak chcąc zintegrować środowisko MSVS2008 oraz bibliotekę Qt trzeba zapewnić odpowiednio skonfigurowane pliki nagłówkowe.
Instrukcja ta zamieszczone jest dla osób, które dopiero zaczynają przygodę z Qt i podobnie jak ja przeszukują anglojęzyczne portale i blogi w celu rozwikłania wielu problemów.
Krok 1. Ściągamy ze strony http://www.qtsoftware.com/downloads/sdk-windows-cpp domyślną dla Windows instalację (zaleca się wersję zawierającą MinGW). Dodatkowo w ściąganej paczce znajduję się wiele programów demo, które w znacznym stopniu ułatwiają naukę nowych bibliotek. Należy również zaopatrzyć się w program MS Visual Studio 2008 :).
Krok 2. Następnie instalujemy środowisko Qt (może być w domyślnej lokalizacji, tj. C:\Qt\2009.03) oraz tworzymy dodatkowy katalog gdzie znajdować się będzie nowa przekompilowana wersja Qt np. C:\Qt\2009.03.MSVC2008. Kopiujemy całą zawartość z orygunalnego katalogu do stworzonego przez nas.
Krok 3. Kolejnym etapem jest ustawienie ścieżki zmiennych środowiskowych, które umożliwiają uruchomianie domyślnych komend Qt i MinGW w dowolnym katalogu wykorzystując konsolę cmd jak również MSVS2008. Aby wszystko działało tak jak powinno klikamy prawym na Mój Komputer->Właściwości->Zaawansowane->Zmienne środowiskowe i w dolnym oknie poszukujemy zmiennej Path. Dodajemy po średniku ; kolejene ścieżki, czyli C:\Qt\2009.03.MSVC2008\qt\bin;C:\Qt\2009.03.MSVC2008\mingw\bin;c:\Qt\2009.03.MSVC2008\qt. Uwaga zmienne środowiskowe zaczną działać dopiero po ponownym uruchomieniu systemu tak, więc wykonujemy tą czynność.
Krok 4. Uruchamiamy konsolę MS Visual Studio 2008, znajduje się w Menu Start\Programy\Microsoft Visual Studio 2008\Visual Studio Tools i przechodzimy do stworzonego katalogu, czyli cd c:\Qt\2009.03.MSVC2008\qt i odpalamy komendy
configure -platform win32-msvc2008
i czekamy ....
nmake
i długo czekamy ....
Jeżeli podczas kompilacji konsola wyrzuci nam błąd:
... FrameLoaderClientQt.obj : error LNK2019: unresolved external symbol “protected:
void __thiscall QWebPage::downloadRequested(class QNetworkRequest const &)” (?do
wnloadRequested@QWebPage@@IAEXABVQNetworkRequest@@@Z) referenced in function “pu
blic: virtual void __thiscall WebCore::FrameLoaderClientQt::startDownload(struct
WebCore::ResourceRequest const &)” (?startDownload@FrameLoaderClientQt@WebCore@
@UAEXABUResourceRequest@2@@Z)
..\..\..\..\lib\QtWebKitd4.dll : fatal error LNK1120: 8 unresolved externals
NMAKE : fatal error U1077: ‘”C:\Program Files (x86)\Microsoft Visual Studio 9.0\
VC\BIN\link.EXE”‘ : return code ‘0×460′
Stop.
NMAKE : fatal error U1077: ‘”C:\Program Files (x86)\Microsoft Visual Studio 9.0\
VC\BIN\nmake.exe”‘ : return code ‘0×2′
Stop.
NMAKE : fatal error U1077: ‘cd’ : return code ‘0×2′
należy usunąć ..\src\3rdparty\webkit\WebCore\tmp\moc\{debug,release}_shared/mocinclude.tmp.
Krok 5. Uruchamiamy MSVS2008 i wchodzimy w Tools->Options->Projects and Solutions->VC++ Directories i dodajemy kolejno ścieżki do katalogów ..\bin, ..\include, ..\lib, ..\src, podobnie jak poniżej.
Krok 6. Ściągamy nakładkę VSAddin ze strony http://get.qtsoftware.com/vsaddin/, instalujemy, resetujemy komputer i przy tworzeniu nowego projektu wyskoczy nam dodatkowa opcja dla QT. Jedna aby wszystko działało należy w pasku narzędzi wejść do QT->Qt Options i dodać ścieżkę do naszego folderu głównego Qt.
W taki sposób mamy skonfigurowane MS Visual Studio 2008 do współpracy z Qt. Mam nadzieję, że ktoś skorzysta z tej małej instrukcji. Jeśli ktoś chce wiedzieć więcej lub dokładniej przeanalizować problem, to zapraszam na http://blog.shadowgears.com/2008/10/making-qt4-dance-with-msvc-2008.html, http://labs.trolltech.com/blogs/2009/06/25/qt-452-has-been-released/, http://blog.shadowgears.com/2009/05/making-qt-and-msvc-2k8-dance-part-2.html.