PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : WxWindows: WXGTK2U_2.4 not found



nobody0
06-01-2004, 17:43
Nach dem Tutorial hier habe ich hello.cpp compiliern können, aber beim Start oder auch statischen Binden erhalte ich die Fehlermeldung

./hello: /usr/lib/libwx_gtk2u-2.4.so: version `WXGTK2U_2.4' not found (required by ./hello)

Was kann man da machen? :confused:

Installiert habe ich unter SuSE 9.0 mit

./configure --enable-gtk2 --enable-unicode
make
make install

Lin728
06-01-2004, 18:00
Grüssi!

Gibts denn unter /usr/lib eine Datei namens libwx_gtk2u-2.4.so??

nobody0
06-01-2004, 21:08
Ja, nach

ln -s libwx_gtk-2.4.so libwx_gtk2u-2.4.so

Nachdem mir eingefallen ist, dass die aus dem wxwindows-Verzeichnis kopiert werden sollte, habe ich das erledigt und nun funktioniert es; die 3 Dateien wurden von make install nur vergessen :)

nobody0
06-01-2004, 21:13
Jetzt gibt es aber noch ein anderes Problem:

> g++ -static `wx-config --libs --cxxflags` hello.cpp -o hello
/usr/lib/gcc-lib/i586-suse-linux/3.3.1/../../../../i586-suse-linux/bin/ld: cannot find -lwx_gtk2u-2.4
collect2: ld returned 1 exit status

Aber ohne -static funktioniert das Programm.
Was fehlt noch, damit man es statisch linken kann? :confused:

peschmae
07-01-2004, 07:03
Hast du denn die Bibliotheken fürs statische linken überhaupt installiert?

MfG Peschmä

oracle2025
07-01-2004, 09:05
dafür müsste man beim
./configure

--disable-shared
mit angeben.

peschmae
07-01-2004, 10:31
ja,

oder kann man die informationen fürs dynamische Linken irgendwie entfernen? Sollte imo möglich sein.

MfG Peschmä

P.S. wozu statisch linken? Besser die Bibliothek mitliefern.

nobody0
07-01-2004, 20:30
Original geschrieben von oracle2025
dafür müsste man beim
./configure

--disable-shared
mit angeben.

Aber ich will das Programm für ein embedded System ohne Libs UND auch für einen PC mit libs compilieren können; configure anders zu konfigurieren hilft da nicht.
Wieso funktioniert es denn trotz -static nicht? :confused:

oracle2025
08-01-2004, 06:20
dann installier wx-windows einfach zweimal, unter einem anderen prefix.

z.b:

--prefix=/opt/wx-static/

nobody0
08-01-2004, 19:40
Aha, danke :)
Den Pfad muss ich dann bei configure angeben, so wie --disable-shared, oder? :confused:

peschmae
09-01-2004, 14:46
was ist das denn für ein embedded System mit x86er-Prozessor?
Die meisten haben da doch Arm oder so.

./configure --disable-shared --prefix=/opt/wx-static

heisst das dann.

MfG Peschmä

nobody0
09-01-2004, 19:49
Das für embedded habe ich nur getestet, auch weil das Problem ohne statisches Linken ist, dass man immer die Libs benötigt; wenn man die nicht oder nicht passend hat, kann man das Programm nicht benutzen (ohne extra wieder installieren zu müssen und dutzende Querabhängigkeiten zwischen den Paketen auflösen zu müssen).
Der embedded Rechner, an dem ich arbeite, hat ARM9 und darauf läuft microwindows. x86 wäre um ein Vielfaches teuerer und embedded Qt ist angeblich so teuer wie MS-Win CD (bei einigen tausend stk.), aber beides zu teuer für die Firma.

peschmae
09-01-2004, 21:22
Die Frage ist dann, bis wo du statisch linkst. WxWindows - Ok, aber darunter (z.B. die libc wohl nicht) - und auch obs wirklich was bringt

MfG Peschmä