mit qt4.5 ging es noch

Alles rund um die Programmierung mit Qt
Antworten
mustermann.klaus
Beiträge: 23
Registriert: 6. April 2009 12:21
Wohnort: Berlin

mit qt4.5 ging es noch

Beitrag von mustermann.klaus »

Hallo, ich verwende auf meinem win-xp sys

http://muonics.net/school/spring05/videoInput/

seit qt 4.6.1 bekomme ich beim Kompilieren freundlich aber bestimmt folgenden Text zu lesen:

Code: Alles auswählen

Führe Build-Schritte für Projekt vidAnlyzer aus...
Starte: c:/qt/2010.01/qt/bin/qmake.exe C:/Dokumente und Einstellungen/lars/Desktop/Waveformer/tabbed Videoinput Mutex timer Pixmapped/vidAnlyzer.pro -spec win32-g++ -r 
Beendet mit Rückgabewert 0.
Starte: C:/Qt/2010.01/mingw/bin/mingw32-make.exe -w 
mingw32-make: Entering directory `C:/Dokumente und Einstellungen/lars/Desktop/Waveformer/tabbed Videoinput Mutex timer Pixmapped'
C:/Qt/2010.01/mingw/bin/mingw32-make -f Makefile.Debug
mingw32-make[1]: Entering directory `C:/Dokumente und Einstellungen/lars/Desktop/Waveformer/tabbed Videoinput Mutex timer Pixmapped'
g++ -c -g -frtti -fexceptions -mthreads -Wall -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_GUI_LIB -DQT_CORE_LIB -DQT_THREAD_SUPPORT -DQT_NEEDS_QMAIN -I"c:\Qt\2010.01\qt\include\QtCore" -I"c:\Qt\2010.01\qt\include\QtGui" -I"c:\Qt\2010.01\qt\include" -I"c:\Qt\2010.01\qt\src\testlib" -I"c:\videoInput0.1995\videoInputSrcAndDemos\libs\DShow\Include" -I"c:\Qt\2010.01\qt\include\ActiveQt" -I"debug" -I"c:\Qt\2010.01\qt\mkspecs\win32-g++" -o debug\main.o main.cpp
g++ -c -g -frtti -fexceptions -mthreads -Wall -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_GUI_LIB -DQT_CORE_LIB -DQT_THREAD_SUPPORT -DQT_NEEDS_QMAIN -I"c:\Qt\2010.01\qt\include\QtCore" -I"c:\Qt\2010.01\qt\include\QtGui" -I"c:\Qt\2010.01\qt\include" -I"c:\Qt\2010.01\qt\src\testlib" -I"c:\videoInput0.1995\videoInputSrcAndDemos\libs\DShow\Include" -I"c:\Qt\2010.01\qt\include\ActiveQt" -I"debug" -I"c:\Qt\2010.01\qt\mkspecs\win32-g++" -o debug\mainWidget.o mainWidget.cpp
g++ -c -g -frtti -fexceptions -mthreads -Wall -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_GUI_LIB -DQT_CORE_LIB -DQT_THREAD_SUPPORT -DQT_NEEDS_QMAIN -I"c:\Qt\2010.01\qt\include\QtCore" -I"c:\Qt\2010.01\qt\include\QtGui" -I"c:\Qt\2010.01\qt\include" -I"c:\Qt\2010.01\qt\src\testlib" -I"c:\videoInput0.1995\videoInputSrcAndDemos\libs\DShow\Include" -I"c:\Qt\2010.01\qt\include\ActiveQt" -I"debug" -I"c:\Qt\2010.01\qt\mkspecs\win32-g++" -o debug\renderthread.o renderthread.cpp
g++ -c -g -frtti -fexceptions -mthreads -Wall -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_GUI_LIB -DQT_CORE_LIB -DQT_THREAD_SUPPORT -DQT_NEEDS_QMAIN -I"c:\Qt\2010.01\qt\include\QtCore" -I"c:\Qt\2010.01\qt\include\QtGui" -I"c:\Qt\2010.01\qt\include" -I"c:\Qt\2010.01\qt\src\testlib" -I"c:\videoInput0.1995\videoInputSrcAndDemos\libs\DShow\Include" -I"c:\Qt\2010.01\qt\include\ActiveQt" -I"debug" -I"c:\Qt\2010.01\qt\mkspecs\win32-g++" -o debug\storage.o storage.cpp
C:/Qt/2010.01/qt/bin\moc.exe -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_GUI_LIB -DQT_CORE_LIB -DQT_THREAD_SUPPORT -DQT_NEEDS_QMAIN -I"c:\Qt\2010.01\qt\include\QtCore" -I"c:\Qt\2010.01\qt\include\QtGui" -I"c:\Qt\2010.01\qt\include" -I"c:\Qt\2010.01\qt\src\testlib" -I"c:\videoInput0.1995\videoInputSrcAndDemos\libs\DShow\Include" -I"c:\Qt\2010.01\qt\include\ActiveQt" -I"debug" -I"c:\Qt\2010.01\qt\mkspecs\win32-g++" -D__GNUC__ -DWIN32 mainwidget.h -o debug\moc_mainwidget.cpp
g++ -c -g -frtti -fexceptions -mthreads -Wall -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_GUI_LIB -DQT_CORE_LIB -DQT_THREAD_SUPPORT -DQT_NEEDS_QMAIN -I"c:\Qt\2010.01\qt\include\QtCore" -I"c:\Qt\2010.01\qt\include\QtGui" -I"c:\Qt\2010.01\qt\include" -I"c:\Qt\2010.01\qt\src\testlib" -I"c:\videoInput0.1995\videoInputSrcAndDemos\libs\DShow\Include" -I"c:\Qt\2010.01\qt\include\ActiveQt" -I"debug" -I"c:\Qt\2010.01\qt\mkspecs\win32-g++" -o debug\moc_mainwidget.o debug\moc_mainwidget.cpp
C:/Qt/2010.01/qt/bin\moc.exe -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_GUI_LIB -DQT_CORE_LIB -DQT_THREAD_SUPPORT -DQT_NEEDS_QMAIN -I"c:\Qt\2010.01\qt\include\QtCore" -I"c:\Qt\2010.01\qt\include\QtGui" -I"c:\Qt\2010.01\qt\include" -I"c:\Qt\2010.01\qt\src\testlib" -I"c:\videoInput0.1995\videoInputSrcAndDemos\libs\DShow\Include" -I"c:\Qt\2010.01\qt\include\ActiveQt" -I"debug" -I"c:\Qt\2010.01\qt\mkspecs\win32-g++" -D__GNUC__ -DWIN32 renderthread.h -o debug\moc_renderthread.cpp
g++ -c -g -frtti -fexceptions -mthreads -Wall -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_GUI_LIB -DQT_CORE_LIB -DQT_THREAD_SUPPORT -DQT_NEEDS_QMAIN -I"c:\Qt\2010.01\qt\include\QtCore" -I"c:\Qt\2010.01\qt\include\QtGui" -I"c:\Qt\2010.01\qt\include" -I"c:\Qt\2010.01\qt\src\testlib" -I"c:\videoInput0.1995\videoInputSrcAndDemos\libs\DShow\Include" -I"c:\Qt\2010.01\qt\include\ActiveQt" -I"debug" -I"c:\Qt\2010.01\qt\mkspecs\win32-g++" -o debug\moc_renderthread.o debug\moc_renderthread.cpp
C:/Qt/2010.01/qt/bin\moc.exe -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_GUI_LIB -DQT_CORE_LIB -DQT_THREAD_SUPPORT -DQT_NEEDS_QMAIN -I"c:\Qt\2010.01\qt\include\QtCore" -I"c:\Qt\2010.01\qt\include\QtGui" -I"c:\Qt\2010.01\qt\include" -I"c:\Qt\2010.01\qt\src\testlib" -I"c:\videoInput0.1995\videoInputSrcAndDemos\libs\DShow\Include" -I"c:\Qt\2010.01\qt\include\ActiveQt" -I"debug" -I"c:\Qt\2010.01\qt\mkspecs\win32-g++" -D__GNUC__ -DWIN32 storage.h -o debug\moc_storage.cpp
g++ -c -g -frtti -fexceptions -mthreads -Wall -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_GUI_LIB -DQT_CORE_LIB -DQT_THREAD_SUPPORT -DQT_NEEDS_QMAIN -I"c:\Qt\2010.01\qt\include\QtCore" -I"c:\Qt\2010.01\qt\include\QtGui" -I"c:\Qt\2010.01\qt\include" -I"c:\Qt\2010.01\qt\src\testlib" -I"c:\videoInput0.1995\videoInputSrcAndDemos\libs\DShow\Include" -I"c:\Qt\2010.01\qt\include\ActiveQt" -I"debug" -I"c:\Qt\2010.01\qt\mkspecs\win32-g++" -o debug\moc_storage.o debug\moc_storage.cpp
g++ -enable-stdcall-fixup -Wl,-enable-auto-import -Wl,-enable-runtime-pseudo-reloc -mthreads -Wl -Wl,-subsystem,windows -o debug\vidAnlyzer.exe debug/main.o debug/mainWidget.o debug/renderthread.o debug/storage.o debug/moc_mainwidget.o debug/moc_renderthread.o debug/moc_storage.o -L"c:\Qt\2010.01\qt\lib" -lmingw32 -lqtmaind C:\WINDOWS\system32\qwtd5.dll C:\Qt\2010.01\qt\bin\QtTestd4.dll C:\videoInput0.1995\compiledLib\compiledByDevCpp\videoInputLib.a C:\videoInput0.1995\videoInputSrcAndDemos\libs\DShow\lib\ddraw.lib C:\videoInput0.1995\videoInputSrcAndDemos\libs\DShow\lib\dxguid.lib C:\videoInput0.1995\videoInputSrcAndDemos\libs\DShow\lib\ole32.lib C:\videoInput0.1995\videoInputSrcAndDemos\libs\DShow\lib\oleaut32.lib C:\videoInput0.1995\videoInputSrcAndDemos\libs\DShow\lib\strmbase.lib C:\videoInput0.1995\videoInputSrcAndDemos\libs\DShow\lib\strmiids.lib C:\videoInput0.1995\videoInputSrcAndDemos\libs\DShow\lib\uuid.lib -lQtGuid4 -lQtCored4
mingw32-make[1]: Leaving directory `C:/Dokumente und Einstellungen/lars/Desktop/Waveformer/tabbed Videoinput Mutex timer Pixmapped'
mingw32-make: Leaving directory `C:/Dokumente und Einstellungen/lars/Desktop/Waveformer/tabbed Videoinput Mutex timer Pixmapped'
bis hier alles gut, aber dann:

Code: Alles auswählen

C:\videoInput0.1995\compiledLib\compiledByDevCpp\videoInputLib.a(videoInput.o):videoInput.cpp:(.text+0xee): undefined reference to `__gxx_personality_sj0'
C:\videoInput0.1995\compiledLib\compiledByDevCpp\videoInputLib.a(videoInput.o):videoInput.cpp:(.text+0x104): undefined reference to `_Unwind_SjLj_Register'
C:\videoInput0.1995\compiledLib\compiledByDevCpp\videoInputLib.a(videoInput.o):videoInput.cpp:(.text+0x2a6): undefined reference to `_Unwind_SjLj_Unregister'
C:\videoInput0.1995\compiledLib\compiledByDevCpp\videoInputLib.a(videoInput.o):videoInput.cpp:(.text+0x2d4): undefined reference to `_Unwind_SjLj_Resume'
C:\videoInput0.1995\compiledLib\compiledByDevCpp\videoInputLib.a(videoInput.o):videoInput.cpp:(.text+0x2fe): undefined reference to `__gxx_personality_sj0'
C:\videoInput0.1995\compiledLib\compiledByDevCpp\videoInputLib.a(videoInput.o):videoInput.cpp:(.text+0x314): undefined reference to `_Unwind_SjLj_Register'
C:\videoInput0.1995\compiledLib\compiledByDevCpp\videoInputLib.a(videoInput.o):videoInput.cpp:(.text+0x4b6): undefined reference to `_Unwind_SjLj_Unregister'
C:\videoInput0.1995\compiledLib\compiledByDevCpp\videoInputLib.a(videoInput.o):videoInput.cpp:(.text+0x4e4): undefined reference to `_Unwind_SjLj_Resume'
C:\videoInput0.1995\compiledLib\compiledByDevCpp\videoInputLib.a(videoInput.o):videoInput.cpp:(.text+0x1b41): undefined reference to `__gxx_personality_sj0'
C:\videoInput0.1995\compiledLib\compiledByDevCpp\videoInputLib.a(videoInput.o):videoInput.cpp:(.text+0x1b5a): undefined reference to `_Unwind_SjLj_Register'
C:\videoInput0.1995\compiledLib\compiledByDevCpp\videoInputLib.a(videoInput.o):videoInput.cpp:(.text+0x1bb4): undefined reference to `_Unwind_SjLj_Unregister'
C:\videoInput0.1995\compiledLib\compiledByDevCpp\videoInputLib.a(videoInput.o):videoInput.cpp:(.text+0x1c03): undefined reference to `_Unwind_SjLj_Resume'
C:\videoInput0.1995\compiledLib\compiledByDevCpp\videoInputLib.a(videoInput.o):videoInput.cpp:(.text+0x1c88): undefined reference to `__gxx_personality_sj0'
C:\videoInput0.1995\compiledLib\compiledByDevCpp\videoInputLib.a(videoInput.o):videoInput.cpp:(.text+0x1ca7): undefined reference to `_Unwind_SjLj_Register'
C:\videoInput0.1995\compiledLib\compiledByDevCpp\videoInputLib.a(videoInput.o):videoInput.cpp:(.text+0x2265): undefined reference to `_Unwind_SjLj_Unregister'
C:\videoInput0.1995\compiledLib\compiledByDevCpp\videoInputLib.a(videoInput.o):videoInput.cpp:(.text+0x228d): undefined reference to `_Unwind_SjLj_Resume'
C:\videoInput0.1995\compiledLib\compiledByDevCpp\videoInputLib.a(videoInput.o):videoInput.cpp:(.text+0x2318): undefined reference to `__gxx_personality_sj0'
C:\videoInput0.1995\compiledLib\compiledByDevCpp\videoInputLib.a(videoInput.o):videoInput.cpp:(.text+0x2337): undefined reference to `_Unwind_SjLj_Register'
C:\videoInput0.1995\compiledLib\compiledByDevCpp\videoInputLib.a(videoInput.o):videoInput.cpp:(.text+0x28f5): undefined reference to `_Unwind_SjLj_Unregister'
C:\videoInput0.1995\compiledLib\compiledByDevCpp\videoInputLib.a(videoInput.o):videoInput.cpp:(.text+0x291d): undefined reference to `_Unwind_SjLj_Resume'
C:\videoInput0.1995\compiledLib\compiledByDevCpp\videoInputLib.a(videoInput.o):videoInput.cpp:(.text+0x38a0): undefined reference to `__gxx_personality_sj0'
C:\videoInput0.1995\compiledLib\compiledByDevCpp\videoInputLib.a(videoInput.o):videoInput.cpp:(.text+0x38df): undefined reference to `_Unwind_SjLj_Register'
C:\videoInput0.1995\compiledLib\compiledByDevCpp\videoInputLib.a(videoInput.o):videoInput.cpp:(.text+0x406b): undefined reference to `_Unwind_SjLj_Unregister'
C:\videoInput0.1995\compiledLib\compiledByDevCpp\videoInputLib.a(videoInput.o):videoInput.cpp:(.text+0x40a3): undefined reference to `_Unwind_SjLj_Unregister'
C:\videoInput0.1995\compiledLib\compiledByDevCpp\videoInputLib.a(videoInput.o):videoInput.cpp:(.text+0x4211): undefined reference to `_Unwind_SjLj_Unregister'
C:\videoInput0.1995\compiledLib\compiledByDevCpp\videoInputLib.a(videoInput.o):videoInput.cpp:(.text+0x42ec): undefined reference to `_Unwind_SjLj_Resume'
C:\videoInput0.1995\compiledLib\compiledByDevCpp\videoInputLib.a(videoInput.o):videoInput.cpp:(.text+0x6cf8): undefined reference to `__gxx_personality_sj0'
C:\videoInput0.1995\compiledLib\compiledByDevCpp\videoInputLib.a(videoInput.o):videoInput.cpp:(.text+0x6d17): undefined reference to `_Unwind_SjLj_Register'
C:\videoInput0.1995\compiledLib\compiledByDevCpp\videoInputLib.a(videoInput.o):videoInput.cpp:(.text+0x6e1e): undefined reference to `_Unwind_SjLj_Unregister'
C:\videoInput0.1995\compiledLib\compiledByDevCpp\videoInputLib.a(videoInput.o):videoInput.cpp:(.text+0x6e3e): undefined reference to `_Unwind_SjLj_Unregister'
C:\videoInput0.1995\compiledLib\compiledByDevCpp\videoInputLib.a(videoInput.o):videoInput.cpp:(.text+0x7002): undefined reference to `_Unwind_SjLj_Resume'
C:\videoInput0.1995\compiledLib\compiledByDevCpp\videoInputLib.a(videoInput.o):videoInput.cpp:(.text+0x70b4): undefined reference to `__gxx_personality_sj0'
C:\videoInput0.1995\compiledLib\compiledByDevCpp\videoInputLib.a(videoInput.o):videoInput.cpp:(.text+0x70cd): undefined reference to `_Unwind_SjLj_Register'
C:\videoInput0.1995\compiledLib\compiledByDevCpp\videoInputLib.a(videoInput.o):videoInput.cpp:(.text+0x7111): undefined reference to `_Unwind_SjLj_Unregister'
C:\videoInput0.1995\compiledLib\compiledByDevCpp\videoInputLib.a(videoInput.o):videoInput.cpp:(.text+0x742e): undefined reference to `_Unwind_SjLj_Unregister'
C:\videoInput0.1995\compiledLib\compiledByDevCpp\videoInputLib.a(videoInput.o):videoInput.cpp:(.text+0x7501): undefined reference to `_Unwind_SjLj_Resume'
collect2: ld returned 1 exit status
mingw32-make[1]: *** [debug\vidAnlyzer.exe] Error 1
mingw32-make: *** [debug] Error 2
Beendet mit Rückgabewert 2.
Fehler beim Erstellen des Projekts vidAnlyzer
Beim Ausführen des Build-Schritts 'Make'
tja, und nu? Was macht denn 4.6 anders als 4.5?

Danke für jeden Tipp
solarix
Beiträge: 1133
Registriert: 7. Juni 2007 19:25

Beitrag von solarix »

Der Linkerfehler hat nirgendwo ein Hinweis auf Qt...das hat also nichts mit Qt zu tun.
Die (vorkompilierte) Library hat schlicht fehlende Abhängigkeiten.
Klingt für mich nach einem Mingw-Update von 3.4 auf 4.4... Ich vermute, du musst "VideoInput" selbst kompilieren (siehe dazu die Hinweise videoInput0.1995/videoInputSrcAndDemos/DevCpp-CompileAsLib/compileInDevCpp.txt), so dass Qt und "VideoInput" mit dem gleichen Compiler übersetzt wurden (schliesslich ist "VideoInput" C++... nicht C)

hth..
mustermann.klaus
Beiträge: 23
Registriert: 6. April 2009 12:21
Wohnort: Berlin

Beitrag von mustermann.klaus »

danke erstmal für die fixe antwort. leider habe ich noch nie eine eigene lib erstellen müssen. ich habe also nullllllllllll erfahrung. wo fange ich also an?

DANKE
Curtis Newton
Beiträge: 122
Registriert: 11. Juni 2008 18:39

Beitrag von Curtis Newton »

mustermann.klaus hat geschrieben:danke erstmal für die fixe antwort. leider habe ich noch nie eine eigene lib erstellen müssen. ich habe also nullllllllllll erfahrung. wo fange ich also an?
Mit einem Buch.

C.
Kay
Beiträge: 62
Registriert: 9. Dezember 2008 21:07

Beitrag von Kay »

Woher hast du denn die alte Library? Wurde die denn explizit für Qt4.5 entworfen oder hat sie einfach so funktioniert? Was für ein Interface bietet die Library? (C++ oder C-Style)
Hast du die *.lib-Files alle mit eingelinkt und nutzt der Linker auch die, die du gemeint hast?
Christian81
Beiträge: 7319
Registriert: 26. August 2004 14:11
Wohnort: Bremen
Kontaktdaten:

Beitrag von Christian81 »

Qt 4.6 wurde mit gcc 4.4 erstellt. Qt 4.5 hingegen mit 3.4. Also kann man keine Libs mixen und muss alles mit gcc 4.4 neu erstellen.
MfG Christian

'Funktioniert nicht' ist keine Fehlerbeschreibung
mustermann.klaus
Beiträge: 23
Registriert: 6. April 2009 12:21
Wohnort: Berlin

Beitrag von mustermann.klaus »

naja, es gibt ja eine mit dev-cpp kompilierte Version. Die tat es auch bis qt 4.5. deshalb die Überraschung. Den Rest muss ich erstmal recherchieren.
Danke für die Antworten.
mustermann.klaus
Beiträge: 23
Registriert: 6. April 2009 12:21
Wohnort: Berlin

Beitrag von mustermann.klaus »

So, nächster Anlauf:

Ja, ich habe alle Bibliotheken miteingelinkt. Wenn ich sie auskommentiere werden sie auch vermisst.

@solarix: mit den Hinweisen funktioniert es bei mir auch nicht. Ich habe auch versucht, es mit dev-cpp unter Einbindung des mit qt-4.6 gelieferten Compilers zu kompilieren. Auch das ist mir leider nicht gelungen.

Ideen?

Danke.
Christian81
Beiträge: 7319
Registriert: 26. August 2004 14:11
Wohnort: Bremen
Kontaktdaten:

Beitrag von Christian81 »

Wie gesagt - die Probleme liegen nur an den unterschiedlichen Gcc-Versionen welche nicht binärkompatibel sind.
MfG Christian

'Funktioniert nicht' ist keine Fehlerbeschreibung
solarix
Beiträge: 1133
Registriert: 7. Juni 2007 19:25

Beitrag von solarix »

mustermann.klaus hat geschrieben:... Auch das ist mir leider nicht gelungen.
Ideen?
.
Was bedeutet "nicht gelungen"? Wir helfen hier auch gerne mal, auch wenn es sich nicht um ein Qt-Problem handelt... aber wir brauchen alle Details, die du uns liefern kannst... Compilerfehler? Linkerfehler?
mustermann.klaus
Beiträge: 23
Registriert: 6. April 2009 12:21
Wohnort: Berlin

Beitrag von mustermann.klaus »

natürlich solarix, du hast voll und ganz recht. das ist kein qt-problem. ich werde mich an ein geeigneteres forum wenden. danke für den input trotzdem.

abschliessend: im ordner den es unter obigem link zum download gibt existiert ein ordner mit einem devcpp projekt-file. das läßt sich problemlos laden, aber eben nicht kompilieren.
Antworten