[gelöst] Massive Probleme mit Compilieren unter DEV

Verschiedenes zu Qt
Antworten
moechild

[gelöst] Massive Probleme mit Compilieren unter DEV

Beitrag von moechild »

Servus, vielleicht kann mir jemand helfen; jetzt wo meine Nerven blank sind. Endlich habe ich es geschafft wie man den DEV konfigurieren muss um Qt zu programmieren, also verlinken. Habe alles wie in der Anleitung im C++-Forum gemacht: http://www.c-plusplus.de/forum/viewtopi ... -is-0.html

Leider scheitert das Compilieren, und es wird keine .exe -Datei erstellt.
Hier ist das Compiler-Log:
------------------------------------------------------------------------------------
Compiler: Default compiler
Führt make... aus
make.exe -f "Makefile.Release" all
Makefile.Release:133: warning: overriding commands for target `release\main.o'

Makefile.Release:130: warning: ignoring old commands for target `release\main.o'
Makefile.Release:139: warning: overriding commands for target `release\main.o'
Makefile.Release:133: warning: ignoring old commands for target `release\main.o'
Makefile.Release:145: warning: overriding commands for target `release\main.o'
Makefile.Release:139: warning: ignoring old commands for target `release\main.o'
Makefile.Release:148: warning: overriding commands for target `release\main.o'
Makefile.Release:145: warning: ignoring old commands for target `release\main.o'
Makefile.Release:151: warning: overriding commands for target `release\main.o'
Makefile.Release:148: warning: ignoring old commands for target `release\main.o'
Makefile.Release:154: warning: overriding commands for target `release\main.o'
Makefile.Release:151: warning: ignoring old commands for target `release\main.o'

g++ -c -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:/Programme/Qt/4.0.1/include/QtGui" -I"C:/Programme/Qt/4.0.1/include/QtCore" -I"C:/Programme/Qt/4.0.1/include" -I"." -I"C:/Programme/Qt/4.0.1/include/ActiveQt" -I"release" -I"." -I"C:/Programme/Qt/4.0.1/mkspecs/win32-g++" -o release\main.o WinMenu\main.cpp

WinMenu\main.cpp: In function `int WinMain(HINSTANCE__*, HINSTANCE__*, CHAR*, int)':
WinMenu\main.cpp:21: error: cannot convert `char[16]' to `const WCHAR*' in assignment
WinMenu\main.cpp:53: error: cannot convert `char*' to `const WCHAR*' for argument `2' to `HWND__* CreateWindowExW(DWORD, const WCHAR*, const WCHAR*, DWORD, int, int, int, int, HWND__*, HMENU__*, HINSTANCE__*, void*)'
WinMenu\main.cpp: In function `LRESULT WindowProcedure(HWND__*, UINT, WPARAM, LPARAM)':

WinMenu\main.cpp:95: error: cannot convert `CHAR*' to `const WCHAR*' for argument `2' to `int MessageBoxW(HWND__*, const WCHAR*, const WCHAR*, UINT)'
WinMenu\main.cpp:100: error: cannot convert `CHAR*' to `const WCHAR*' for argument `2' to `BOOL WinHelpW(HWND__*, const WCHAR*, UINT, DWORD)'
WinMenu\main.cpp:105: error: cannot convert `CHAR*' to `const WCHAR*' for argument `2' to `BOOL WinHelpW(HWND__*, const WCHAR*, UINT, DWORD)'
WinMenu\main.cpp:110: error: cannot convert `CHAR*' to `const WCHAR*' for argument `2' to `BOOL WinHelpW(HWND__*, const WCHAR*, UINT, DWORD)'
WinMenu\main.cpp:118: error: cannot convert `const char*' to `const WCHAR*' for argument `2' to `int MessageBoxW(HWND__*, const WCHAR*, const WCHAR*, UINT)'

make.exe: *** [release\main.o] Error 1

Ausführung beendet
------------------------------------------------------------------------------------
Softwareinfo:
-DEV-C++-4.9.9.2
-Qt 4.0.1 mit mingw

Wenn jemand mir helfen könnte, wäre ich ausgesprochen dankbar!!!
Zuletzt geändert von moechild am 24. August 2006 11:48, insgesamt 1-mal geändert.
Christian81
Beiträge: 7319
Registriert: 26. August 2004 14:11
Wohnort: Bremen
Kontaktdaten:

Beitrag von Christian81 »

Qt ist mit UNICODE-Unterstützung kompiliert, also ist char falsch, man muss WCHAR benutzen.
Was ich allerdings nicht kapiere, ist die Tatsache dass Du Windows-Funktionen benutzt obwohl Du mit Qt arbeitest. Warum brauchst Du WinMain und DlgProc/WindowProcedure überhaupt?
MfG Christian

'Funktioniert nicht' ist keine Fehlerbeschreibung
moechild

Beitrag von moechild »

Hier ist der Quellcode, den ich benutzt habe. Das ist das Tutorial-Beispiel von Trolltech.

#include <Qapplication.h>
#include <Qpushbutton.h>


int main( int argc, char **argv )
{
QApplication a( argc, argv );

QPushButton hello( "Hello world!", 0 );
hello.resize( 100, 30 );

a.setMainWidget( &hello );
hello.show();
return a.exec();
}

Obwohl der Quellcode absolut korrekt ist, zeigt mir der Compiler ständig Fehler.
Christian81
Beiträge: 7319
Registriert: 26. August 2004 14:11
Wohnort: Bremen
Kontaktdaten:

Beitrag von Christian81 »

Sorry, aber das glaube ich nicht, ist es wirklich die Datei WinMenu\main.cpp ? Schau Dir mal die Fehler an - das kann gar nicht passen... hat DEV evtl. eine eigene main.cpp angelegt die jetzt kompiliert wird?
MfG Christian

'Funktioniert nicht' ist keine Fehlerbeschreibung
moechild

Beitrag von moechild »

Jetzt habe ich endlich herausgefunden was ich falsch gemacht habe. Die Reihenfolge war eigentlich klar. Jedoch habe ich die Projektdateien im Example-Ordner vom DEV-Cpp eingefügt. Wenn man jetzt versucht mittels Konsole >qmake -project die .pro-Datei zu erzeugen werden anscheinend auch die ganzen anderen Beispiele von DEV-Cpp mit berücksichtigt.

Man muss das ganze Projekt in einem einzelnen Ordner stecken, sonst funktionierts nicht.

Und danke christian81 für den Rat, sonst hätte ich das nicht gemerkt.

-----------------------------------------------------------------------------

Freudentränen
Antworten