przejście do zawartości
zpr c++ quick reference
Narzędzia użytkownika
Zarejestruj się!
Zaloguj
Narzędzia witryny
Narzędzia
Pokaż stronę
Poprzednie wersje
Odnośniki
Ostatnie zmiany
Menadżer multimediów
Indeks
Zaloguj
Zarejestruj się!
Ostatnie zmiany
Menadżer multimediów
Indeks
Ślad:
ide_qt_creator
Ta strona jest tylko do odczytu. Możesz wyświetlić źródła tej strony ale nie możesz ich zmienić.
====== Wstęp ====== ===== Opis QT Creator ===== [[http://qt.nokia.com/products/developer-tools/ | QT Creator]] to darmowe środowisko programistyczne stworzone do wygodnej i szybkiej produkcji programów używających bibliotek QT. Jednakże samo środowisko zostało tak dobrze przygotowane, iż nadaje się nie tylko do tworzenia oprogramowania wykorzystującego biblioteki QT, ale również inne, dużych projektów. ===== Wersje użytych narzędzi ===== Przy tworzeniu tego samouczka użyłem: * Windows 7 Professional 64 bit * QT Creator 2010.05 ([[http://get.qt.nokia.com/qtsdk/qt-sdk-win-opensource-2010.05.exe | qt-sdk-win-opensource-2010.05.exe]]) * Biblioteki Boost 1.45.0 ([[http://sourceforge.net/projects/boost/files/boost/1.45.0/boost_1_45_0.7z/download | boost_1_45_0.7z]]) ===== Przygotowanie narzędzi ===== Po rozpakowaniu bibliotek Boost, należy zainstalować QT Creatora z pakietem MinGW (potrzebne w wypadku braku takowego w systemie). Struktura katalogów w przypadku mojego systemu: Ścieżka do bibliotek Boost: {{:qt_creator:boost_path.png|}} Ścieżka do instalacji QT Creator: {{:qt_creator:qt_crator_path.png|}} ====== Kompilacja bibliotek Boost pod Windowsem ====== Aby skompilować biblioteki Boost, które następnie będziemy mogli linkować do QT Creator należy wykonać kolejno kroki: Dodać do ścieżki (zmienna środowiskowa PATH) katalog z binarkami MinGW (potrzebne do kompilacji przy pomocy gcc) <code>sciezka/do/qt/mingw/bin</code> {{:qt_creator:adding_path.png|}} Uruchomić wiersz poleceń (CMD) z prawami administratora: W CMD przejść do <code>sciezka/do/boost/tools/build/v2/engine/src</code> i wpisać komendę, która przygotuje narzędzie do kompilacji: <code>build.bat gcc</code> {{:qt_creator:build.png|}} Po zakończeniu kompilacji otrzymamy plik bjam.exe w katalogu: <code>sciezka/do/boost/tools/build/v2/engine/src/bin.ntx86</code> który należy przekopiować do: <code>sciezka/do/boost</code> Następnie uruchomić proces kompilacji z dodatkowymi parametrami: <code>bjam toolset=gcc threading=multi --build-type=complete stage install --layout=tagged >build.log 2>&1</code> {{:qt_creator:bjam.png|}} Teraz trzeba wykazać się **dużą** dawką cierpliwości. Po zakończonej kompilacji można znaleźć log w pliku: <code>build.log</code> Gotowe biblioteki w katalogu: <code>sciezka/do/boost/stage/lib</code> ====== Linkowanie bibliotek Boost w QT Creator ====== Po udanej kompilacji, aby podlinkować biblioteki, w pliku projektu należy dodać: <code>INCLUDEPATH += "sciezka/do/boost" LIBS += -L"sciezka/do/boost/stage/lib"</code> Pierwszy wiersz określa nam położenie plików nagłówkowych, a drugi katalog z bibliotekami. Teraz jeżeli chcemy użyć w projekcie na przykład biblioteki regex, dodajemy do pliku projektu: <code>LIBS += \ -lboost_regex-mt</code> ===== Zawartość przykładowych plików ===== Plik projektu:<code>#------------------------------------------------- # # Project created by QtCreator 2010-12-30T11:21:05 # #------------------------------------------------- QT += core QT -= gui TARGET = BoostTest CONFIG += console CONFIG -= app_bundle TEMPLATE = app SOURCES += main.cpp INCLUDEPATH += "E:\boost_1_45_0" LIBS += -L"E:\boost_1_45_0\stage\lib" LIBS += \ -lboost_regex-mt </code> Plik main.cpp:<code cpp>#include <iostream> #include <boost/xpressive/xpressive.hpp> using namespace boost::xpressive; int main() { std::string hello( "hello world!" ); sregex rex = sregex::compile( "(\\w+) (\\w+)!" ); smatch what; if( regex_match( hello, what, rex ) ) { std::cout << what[0] << '\n'; // whole match std::cout << what[1] << '\n'; // first capture std::cout << what[2] << '\n'; // second capture } return 0; } </code> ====== Struktura pliku projektu QT Creator (*.pro) ====== W przypadku projektu wieloosobowego, może (i raczej tak będzie) przydarzyć się konflikt ścieżek do bibliotek. W takim przypadku należy dodać nowy plik, który będzie opisywał tylko **lokalne** ścieżki i nie będzie on dzielony z współpracownikami. Dodatkowo należy zadbać o pobieranie go do projektu. ===== Przykład ===== Dodajemy plik local.pro do projektu. W tym pliku umieszczamy ścieżki do bibliotek Boost w naszym systemie. W oryginalnym (wspólnym pliku projektowym) dodajemy linię: <code>include(local.pro)</code> W ten sposób każda osoba pracująca nad wspólnym projektem może mieć biblioteki rozmieszczone w innym miejscu w swoim systemie. Przykładowy plik projektu: <code>#------------------------------------------------- # # Project created by QtCreator 2010-12-30T11:21:05 # #------------------------------------------------- QT += core QT -= gui TARGET = BoostTest CONFIG += console CONFIG -= app_bundle TEMPLATE = app SOURCES += main.cpp include(local.pro) LIBS += \ -lboost_regex-mt OTHER_FILES += \ local.pro </code> Plik z lokalnymi ścieżkami:<code>#local.pro INCLUDEPATH += "E:\boost_1_45_0" LIBS += -L"E:\boost_1_45_0\stage\lib"</code> --- //[[netczuk.tomasz@gmail.com|Tomasz Netczuk]] 2011/01/01 20:36//
ide_qt_creator.txt
· ostatnio zmienione: 2011/01/01 20:39 przez
tnetczuk
Narzędzia strony
Pokaż stronę
Poprzednie wersje
Odnośniki
Do góry