WxWidgets statisch linken in Code::Blocks
-
Einen schönen guten Abend!
*Wenn ich die WxWidgets Anwendung von der Tutorialseite (http://www.wxwidgets.org/docs/tutorials/hello.htm) kompiliere erhalte ich "undefined reference to `__Unwind_Resume'" mit eingebundener libwxbase28.a und libwxmsw28_core.a. Binde ich wxbase28_gcc.dll und wxmsw28_core_gcc.dll ein erhalte ich eine lange Liste von infos (http://www.xup.in/dl,18654891/info.txt) und einen "Anwendungsfehler" beim Start.
Kann mir Jemand behilflich sein?
Vielen Dank im Voraus, Adam SIch habe die Lösung jetzt gefunden, in der Projekterstellung musste ich auswählen, DLLs zu verwenden.* Gibt es keine Möglichkeit die wx Libs statisch zu linken?
-
Hast du dir die wxWidgets-Libraries selbst kompiliert?
Sieht so aus, als ob du sie nur mit SHARED=1 oder so kompiliert hättest.
Wenn du sie richtig kompiliert hast, einfach das "Verwende wxWidgets-DLL"-Kästchen wieder ausmachen.PS: Welches OS?
-
Ich verwende wxPack unter Windows. Im lib ordner ist einmal ein gcc_dll und einmal ein gcc_lib Ordner vorhanden.
Wenn ich vom gcc_lib Ordner die libwxbase28.a und libwxmsw28_core.a einbinde erhalte ich die bereits genannten Fehler.
-
Ich kenn den Fehler, den hatte ich vor ein, zwei Monaten auch mal aber ich weiß grad nicht mehr, was da dran falsch war...
-
Wenn dein wxWidgets unter C:\wxWidgets-2.8.10 liegt, dann versuch mal folgenden Kommandozeilencode:
g++ -mwindows -Wno-long-long -O3 -s -IC:\wxWidgets-2.8.10\include HelloWorldCode.cpp -o HelloWorld.exe -LC:\wxWidgets-2.8.10\lib\gcc_lib -lwxmsw28 -lwxtiff -lwxjpeg -lwxpng -lwxzlib -lwxregex -lwxexpat -lgdi32 -lwxregex -lcomctl32 -lole32 -loleaut32 -luuid
Das Fette musst du dann ersetzen.
-
Du kannst es mal versuchen mit der Option "wxWidgets is built as a monolithic library".
-
wxSkip schrieb:
Du kannst es mal versuchen mit der Option "wxWidgets is built as a monolithic library".
Dann erhalte ich etliche
undefined reference to `__Unwind_Resume'
-
Hast du den Kommandozeilencode ausprobiert?
Also ich habe gelesen, __Unwind_Resume sei irgend so eine Standardlib-Funktion für Fehlerbehandlung, glaube aber nicht, dass das damit was zu tun hat...
-
-
Danke für den Link.
Anscheinend wurde wxPack nicht mit der offiziellen MinGW Version kompiliert und kann deshalb nicht mit der offiziellen Version gelinkt werden.
Ich habe daher nun wxWidgets selber kompiliert nach dem Tutorial von http://wiki.wxwidgets.org/Compiling_wxWidgets_with_MinGW und es funktioniert nun.
Ich habe das selber kompilieren vermieden, da ich die Vorgehensweise mit MSYS, von der ich in einem Tutorial hier im Forum gelesen habe, etwas umständlich fand.
Danke wxSkip für die Hilfe!
-
Hello! adbddkd interesting adbddkd site!