nie jestem programistą, ale ostatnio chciałem się trochę pobawić Qt. Mam
książkę heliona do Qt i próbuję instalować to w Dev-C++. Tylko, że tam
jakiś tajemniczy szablon qt.template używają. Wyguglałem taki szablon,
ale do starszej wersji Qt i nie działa z nowszą. Próbuję ,,ręcznie''
zmusić środowisko do pracy z Qt, ale wtedy jest jeszcze gorzej, bo mówi:
Compiler: Default compiler
Building Makefile: "C:\Dev-Cpp\programy\Makefile.win"
Executing make...
make.exe -f "C:\Dev-Cpp\programy\Makefile.win" all
g++.exe main.o -o "Project1.exe" -L"C:/Dev-Cpp/lib" -L"C:/Qt/2009.05/lib"
main.o(.text+0x182):main.cpp: undefined reference to
`_imp___ZN12QApplicationC1ERiPPci'
main.o(.text+0x1c5):main.cpp: undefined reference to
`_imp___ZN11QPushButtonC1ERK7QStringP7QWidget'
main.o(.text+0x24f):main.cpp: undefined reference to
`_imp___ZN12QApplication4execEv'
main.o(.text+0x26c):main.cpp: undefined reference to
`QPushButton::~QPushButton()'
main.o(.text+0x281):main.cpp: undefined reference to
`QApplication::~QApplication()'
main.o(.text+0x2e4):main.cpp: undefined reference to
`QPushButton::~QPushButton()'
main.o(.text+0x311):main.cpp: undefined reference to
`QApplication::~QApplication()'
main.o(.text$_ZN7QWidget6resizeEii[QWidget::resize(int,
int)]+0x2d):main.cpp: undefined reference to
`_imp___ZN7QWidget6resizeERK5QSize'
main.o(.text$_ZN7QStringD1Ev[QString::~QString()]+0x20):main.cpp:
undefined reference to `_imp___ZN7QString4freeEPNS_4DataE'
main.o(.text$_ZN7QStringC1EPKc[QString::QString(char
const*)]+0x19):main.cpp: undefined reference to
`_imp___ZN7QString16fromAscii_helperEPKci'
collect2: ld returned 1 exit status
make.exe: *** [Project1.exe] Error 1
Execution terminated
===================================================
Jak skorzystam z tego niewłaściwego szablonu, to jest lepiej, bo mam:
Compiler: Default compiler
Building Makefile: "C:\Dev-Cpp\programy\Makefile.win"
Executing make...
make.exe -f "C:\Dev-Cpp\programy\Makefile.win" all
g++.exe -c main2.cpp -o main2.o
-I"C:/Dev-Cpp/lib/gcc/mingw32/3.4.2/include"
-I"C:/Dev-Cpp/include/c++/3.4.2/backward"
-I"C:/Dev-Cpp/include/c++/3.4.2/mingw32"
-I"C:/Dev-Cpp/include/c++/3.4.2" -I"C:/Dev-Cpp/include"
-I"C:/Qt/2009.05/qt/include/Qt" -I"C:/Qt/2009.05/qt/include"
-I"C:/Qt/2009.05/qt/include/QtGui" -O2 -O2 -frtti -fexceptions -Wall
-DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_NO_DEBUG -DQT_CORE_LIB
-DQT_GUI_LIB -DQT_THREAD_SUPPORT -DQT_NEEDS_QMAIN
-I"C:/Qt/2009.05/qt/include/QtGui" -I"C:/Qt/2009.05/qt/include/QtCore"
-I"C:/Qt/2009.05/qt/include" -I"." -I"C:/Qt/2009.05/qt/include/ActiveQt"
-I"tmp\moc\release_shared" -I"." -I"C:\Qt\2009.05\qt\mkspecs\win32-g++"
windres.exe -i Project2_private.rc --input-format=rc -o
Project2_private.res -O coff
windres.exe: no resources
make.exe: *** [Project2_private.res] Error 1
Execution terminated
====================================
W powyższym przykładzie już nawet pozmieniałem w szablonie ścieżki na
C:/Qt/2009.05/qt/, bo tam było 4.cośtam i myślałem, że to winne... Ale
niestety dupa blada. Co ciekawe, z tym resources to jest jak kompiluję 1
raz. Jak kompiluję 2 raz, to mam dla odmiany:
Compiler: Default compiler
Building Makefile: "C:\Dev-Cpp\programy\Makefile.win"
Executing make...
make.exe -f "C:\Dev-Cpp\programy\Makefile.win" all
g++.exe main2.o -o "Project2.exe" -L"C:/Dev-Cpp/lib"
-L"C:/Qt/2009.05/lib" -mthreads -Wl,-enable-stdcall-fixup
-Wl,-enable-auto-import -Wl,-enable-runtime-pseudo-reloc -Wl,-s -Wl,-s
-Wl,-subsystem,windows -L"C:/Qt/2009.05/lib" -L"C:/Qt/2009.05/lib"
-lmingw32 -lqtmain -lQtCore4 -lQtGui4
C:\Dev-Cpp\Bin\..\lib\gcc\mingw32\3.4.2\..\..\..\..\mingw32\bin\ld.exe:
cannot find -lqtmain
collect2: ld returned 1 exit status
make.exe: *** [Project2.exe] Error 1
Execution terminated
--
Przemysław Adam Śmiejek
http://qt.nokia.com/products/developer-tools/developer-tools
pozdrawiam
kazik
Przemysław Adam Śmiejek pisze:
W dniu 2010-01-15 10:57, Kazimierz pisze:
> a próbowałeś może tego?
>
> http://qt.nokia.com/products/developer-tools/developer-tools
Nie. To dla mnie za skomplikowane na początek. Na start chcę po prostu
rozpracować połączenie Qt z Dev-C++ i kompilować proste helloworldy. Jak
opanuję podstawy, to przyjdzie czas na narzędzia developerskie.
--
Przemysław Adam Śmiejek
bardzo �atwo zintegrowa� QT z visual studio, oczywi�cie je�li pracujesz pod
Windowsem,
takie rozwi�zanie w�a�nie bym polkeca�