wxWidgets Installationsproblem
-
Besten Dank. Habe mir mal das TDM-GCC Packet installiert und mir den Ordnerinhalt vom MinGW sowie dem TDM-GCC Packet mal genauer angeschaut (bin Verzeichnis). Was mich irritiert hat. In beiden Verzeichnissen befinden sich zwei exen eines Compilers. Beispiel G++: Sowohl im MinGW (http://www.mingw.org/) als auch im MinGW32 (http://tdm-gcc.tdragon.net/) Verzeichnis befinden sich zum einen eine g++.exe und zum anderen eine mingw32-g++.exe. Mithilfe eines MD5-Checks habe ich herausgefunden, dass alle vier exen einen anderen MD5-Hash haben. Wieso sind in jedem Verzeichnis 2 exen und wo liegt der Unterschied bei allen?
Source Homepage Verzeichnisname Compiler Applikationstyp kompilierbar? http://www.mingw.org/ MinGW g++.exe Konsole Ja http://www.mingw.org/ MinGW g++.exe wxWidgets Ja http://www.mingw.org/ MinGW mingw32-g++.exe Konsole Ja http://www.mingw.org/ MinGW mingw32-g++.exe wxWidgets Ja http://tdm-gcc.tdragon.net/ MinGW32 g++.exe Konsole Ja http://tdm-gcc.tdragon.net/ MinGW32 g++.exe wxWidgets Nein http://tdm-gcc.tdragon.net/ MinGW32 mingw32-g++.exe Konsole Ja http://tdm-gcc.tdragon.net/ MinGW32 mingw32-g++.exe wxWidgets Nein http://tdm-gcc.tdragon.net/ MinGW64 g++.exe Konsole Ja http://tdm-gcc.tdragon.net/ MinGW64 g++.exe wxWidgets Nein http://tdm-gcc.tdragon.net/ MinGW64 x86_64-w64-mingw32-g++.exe Konsole Ja http://tdm-gcc.tdragon.net/ MinGW64 x86_64-w64-mingw32-g++.exe wxWidgets Nein
-
Die exe-Dateien sollten gleich funktionieren, vielleicht ist das deswegen, falls du zwei MinGW-Verzeichnisse in den Path tust, damit du den Compiler trotzdem noch ohne genaue Pfadangabe eindeutig aufrufen kannst.
Warum du bei wxWidgets mit TDM-GCC nicht kompilierbar hingeschrieben hast, kann ich nicht nachvollziehen.
-
Wenn ich mit dem MinGW32 von http://tdm-gcc.tdragon.net/ das wxWidgets Beispielprojekt kompilieren möchte, bekomme ich folgende Fehler ausgegeben:
||=== My, Debug ===|
C:\wxWidgets2.8\lib\gcc_lib\libwxmsw28_core.a(corelib_app.o):app.cpp|| undefined reference to\_Unwind_Resume'| C:\\wxWidgets2.8\\lib\\gcc\_lib\\libwxmsw28\_core.a(corelib\_app.o):app.cpp|| undefined reference to
_Unwind_Resume'|
C:\wxWidgets2.8\lib\gcc_lib\libwxmsw28_core.a(corelib_app.o):app.cpp|| undefined reference to\_Unwind_Resume'| C:\\wxWidgets2.8\\lib\\gcc\_lib\\libwxmsw28\_core.a(corelib\_app.o):app.cpp|| undefined reference to
_Unwind_Resume'|
C:\wxWidgets2.8\lib\gcc_lib\libwxmsw28_core.a(corelib_app.o):app.cpp|| undefined reference to\_Unwind_Resume'| C:\\wxWidgets2.8\\lib\\gcc\_lib\\libwxmsw28\_core.a(corelib\_app.o):app.cpp|| more undefined references to
_Unwind_Resume' follow|
C:\wxWidgets2.8\lib\gcc_lib\libwxmsw28_core.a(corelib_app.o):app.cpp:(.eh_frame+0x12)||undefined reference to\_\_gxx\_personality_v0'| C:\\wxWidgets2.8\\lib\\gcc\_lib\\libwxmsw28\_core.a(corelib\_main.o):main.cpp|| undefined reference to
_Unwind_Resume'|
C:\wxWidgets2.8\lib\gcc_lib\libwxmsw28_core.a(corelib_main.o):main.cpp:(.eh_frame+0x12)||undefined reference to\_\_gxx\_personality_v0'| C:\\wxWidgets2.8\\lib\\gcc\_lib\\libwxmsw28\_core.a(corelib\_icon.o):icon.cpp|| undefined reference to
_Unwind_Resume'|
C:\wxWidgets2.8\lib\gcc_lib\libwxmsw28_core.a(corelib_icon.o):icon.cpp|| undefined reference to\_Unwind_Resume'| C:\\wxWidgets2.8\\lib\\gcc\_lib\\libwxmsw28\_core.a(corelib\_icon.o):icon.cpp|| undefined reference to
_Unwind_Resume'|
C:\wxWidgets2.8\lib\gcc_lib\libwxmsw28_core.a(corelib_icon.o):icon.cpp|| undefined reference to\_Unwind_Resume'| C:\\wxWidgets2.8\\lib\\gcc\_lib\\libwxmsw28\_core.a(corelib\_icon.o):icon.cpp|| undefined reference to
_Unwind_Resume'|
C:\wxWidgets2.8\lib\gcc_lib\libwxmsw28_core.a(corelib_icon.o):icon.cpp|| more undefined references to\_Unwind_Resume' follow| C:\\wxWidgets2.8\\lib\\gcc\_lib\\libwxmsw28\_core.a(corelib\_icon.o):icon.cpp:(.eh\_frame+0x12)||undefined reference to
__gxx_personality_v0'|
C:\wxWidgets2.8\lib\gcc_lib\libwxmsw28_core.a(corelib_appcmn.o):appcmn.cpp|| undefined reference to\_Unwind_Resume'| C:\\wxWidgets2.8\\lib\\gcc\_lib\\libwxmsw28\_core.a(corelib\_appcmn.o):appcmn.cpp|| undefined reference to
_Unwind_Resume'|
C:\wxWidgets2.8\lib\gcc_lib\libwxmsw28_core.a(corelib_appcmn.o):appcmn.cpp|| undefined reference to\_Unwind_Resume'| C:\\wxWidgets2.8\\lib\\gcc\_lib\\libwxmsw28\_core.a(corelib\_appcmn.o):appcmn.cpp|| undefined reference to
_Unwind_Resume'|
C:\wxWidgets2.8\lib\gcc_lib\libwxmsw28_core.a(corelib_appcmn.o):appcmn.cpp|| undefined reference to\_Unwind_Resume'| C:\\wxWidgets2.8\\lib\\gcc\_lib\\libwxmsw28\_core.a(corelib\_appcmn.o):appcmn.cpp|| more undefined references to
_Unwind_Resume' follow|
C:\wxWidgets2.8\lib\gcc_lib\libwxmsw28_core.a(corelib_appcmn.o):appcmn.cpp:(.eh_frame+0x12)||undefined reference to\_\_gxx\_personality_v0'| C:\\wxWidgets2.8\\lib\\gcc\_lib\\libwxmsw28\_core.a(corelib\_gdicmn.o):gdicmn.cpp|| undefined reference to
_Unwind_Resume'|
C:\wxWidgets2.8\lib\gcc_lib\libwxmsw28_core.a(corelib_gdicmn.o):gdicmn.cpp|| undefined reference to\_Unwind_Resume'| C:\\wxWidgets2.8\\lib\\gcc\_lib\\libwxmsw28\_core.a(corelib\_gdicmn.o):gdicmn.cpp|| undefined reference to
_Unwind_Resume'|
C:\wxWidgets2.8\lib\gcc_lib\libwxmsw28_core.a(corelib_gdicmn.o):gdicmn.cpp|| undefined reference to\_Unwind_Resume'| C:\\wxWidgets2.8\\lib\\gcc\_lib\\libwxmsw28\_core.a(corelib\_gdicmn.o):gdicmn.cpp|| undefined reference to
_Unwind_Resume'|
C:\wxWidgets2.8\lib\gcc_lib\libwxmsw28_core.a(corelib_gdicmn.o):gdicmn.cpp|| more undefined references to\_Unwind_Resume' follow| C:\\wxWidgets2.8\\lib\\gcc\_lib\\libwxmsw28\_core.a(corelib\_gdicmn.o):gdicmn.cpp:(.eh\_frame+0x12)||undefined reference to
__gxx_personality_v0'|
C:\wxWidgets2.8\lib\gcc_lib\libwxmsw28_core.a(corelib_window.o):window.cpp|| undefined reference to\_Unwind_Resume'| C:\\wxWidgets2.8\\lib\\gcc\_lib\\libwxmsw28\_core.a(corelib\_window.o):window.cpp|| undefined reference to
_Unwind_Resume'|
C:\wxWidgets2.8\lib\gcc_lib\libwxmsw28_core.a(corelib_window.o):window.cpp|| undefined reference to\_Unwind_Resume'| C:\\wxWidgets2.8\\lib\\gcc\_lib\\libwxmsw28\_core.a(corelib\_window.o):window.cpp|| undefined reference to
_Unwind_Resume'|
C:\wxWidgets2.8\lib\gcc_lib\libwxmsw28_core.a(corelib_window.o):window.cpp|| undefined reference to\_Unwind_Resume'| C:\\wxWidgets2.8\\lib\\gcc\_lib\\libwxmsw28\_core.a(corelib\_window.o):window.cpp|| more undefined references to
_Unwind_Resume' follow|
C:\wxWidgets2.8\lib\gcc_lib\libwxmsw28_core.a(corelib_window.o):window.cpp:(.eh_frame+0x12)||undefined reference to\_\_gxx\_personality_v0'| C:\\wxWidgets2.8\\lib\\gcc\_lib\\libwxmsw28\_core.a(corelib\_wincmn.o):wincmn.cpp|| undefined reference to
_Unwind_Resume'|
C:\wxWidgets2.8\lib\gcc_lib\libwxmsw28_core.a(corelib_wincmn.o):wincmn.cpp|| undefined reference to\_Unwind_Resume'| C:\\wxWidgets2.8\\lib\\gcc\_lib\\libwxmsw28\_core.a(corelib\_wincmn.o):wincmn.cpp|| undefined reference to
_Unwind_Resume'|
C:\wxWidgets2.8\lib\gcc_lib\libwxmsw28_core.a(corelib_wincmn.o):wincmn.cpp|| undefined reference to\_Unwind_Resume'| C:\\wxWidgets2.8\\lib\\gcc\_lib\\libwxmsw28\_core.a(corelib\_wincmn.o):wincmn.cpp|| undefined reference to
_Unwind_Resume'|
C:\wxWidgets2.8\lib\gcc_lib\libwxmsw28_core.a(corelib_wincmn.o):wincmn.cpp|| more undefined references to\_Unwind_Resume' follow| C:\\wxWidgets2.8\\lib\\gcc\_lib\\libwxmsw28\_core.a(corelib\_wincmn.o):wincmn.cpp:(.eh\_frame+0x12)||undefined reference to
__gxx_personality_v0'|
C:\wxWidgets2.8\lib\gcc_lib\libwxmsw28_core.a(corelib_frame.o):frame.cpp|| undefined reference to\_Unwind_Resume'| C:\\wxWidgets2.8\\lib\\gcc\_lib\\libwxmsw28\_core.a(corelib\_frame.o):frame.cpp|| undefined reference to
_Unwind_Resume'|
C:\wxWidgets2.8\lib\gcc_lib\libwxmsw28_core.a(corelib_frame.o):frame.cpp|| undefined reference to\_Unwind_Resume'| C:\\wxWidgets2.8\\lib\\gcc\_lib\\libwxmsw28\_core.a(corelib\_frame.o):frame.cpp|| undefined reference to
_Unwind_Resume'|
C:\wxWidgets2.8\lib\gcc_lib\libwxmsw28_core.a(corelib_frame.o):frame.cpp|| undefined reference to\_Unwind_Resume'| C:\\wxWidgets2.8\\lib\\gcc\_lib\\libwxmsw28\_core.a(corelib\_frame.o):frame.cpp|| more undefined references to
_Unwind_Resume' follow|
||More errors follow but not being shown.|
||Edit the max errors limit in compiler options...|
||=== Build finished: 50 errors, 0 warnings ===|
-
Und warum das so ist, habe ich doch erst in diesem Thread erklärt?! Kompilier wxWidgets selber mit dem gleichen Compiler, dann bekommst du solche Probleme nicht.
-
Sorry, ich hatte mich falsch ausgedrückt. Mein Fehler. Ich wollte damit sagen, das sich das wxPack nicht mit dem MinGW32 von http://tdm-gcc.tdragon.net/ kompilieren lässt und nicht generell wxWidgets.
Nochmal vielen Dank für deine Hilfe. Es funktioniert nun alles.
-
DarkBug schrieb:
Sorry, ich hatte mich falsch ausgedrückt. Mein Fehler. Ich wollte damit sagen, das sich das wxPack nicht mit dem MinGW32 von http://tdm-gcc.tdragon.net/ kompilieren lässt und nicht generell wxWidgets.
Nochmal vielen Dank für deine Hilfe. Es funktioniert nun alles.
Aber du kannst doch dort beim Installer sogar auswählen, ob du SJLJ oder DW2 willst?! Also kannst du das nicht wirklich so schreiben, denn mit einem von den beiden (also wahrscheinlich dw2) wird es ja wohl gehen.
-
Ja, hast Recht. Mit dem dwarf2 funkioniert es. Was ist eigentlich der 64-Bit Compiler für ein Compiler (sjlj oder dwarf2)? Ich frage, weil ich dort nur eine Option auswählen kann.
-
Wenn du hier bei den Individual Packages schaust, siehst du, dass der 64-Bit-MinGW sjlj ist.
-
Danke. Und der MinGW von http://www.mingw.org/ ist dann ein dwarf2, oder?
-
Wenn du wxPack mit dem mingw.org-MinGW und dem TDM-MinGW-dw2 linken kannst, dann wird der von mingw.org wohl auch ein dw2-Compiler sein.
-
Danke. Letzte Frage: Gibt es einen 64-Bit-MinGW-dwarf2 Compiler?
-
DarkBug schrieb:
Danke. Letzte Frage: Gibt es einen 64-Bit-MinGW-dwarf2 Compiler?
http://blog.gmane.org/gmane.comp.gnu.mingw.w64.general/month=20100501
2. Such-Treffer.
-
Achso, danke. Das heißt, wenn ich wxWidgets Programme auf 64Bit Ebene schreiben möchte, komme ich nicht drumherum wxWidgets selber mit einem 64Bit Compiler zu kompilieren. Sehe ich das richtig?