PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : obexftp 0.10.7 vs. SuSE 9.2



traffic
28.03.05, 13:46
Bei SuSE 9.2 sind ja openobex-1.0.1 und obexftp-0.10.4 mitgeliefert, ich möchte aber obexftp-0.10.7 haben, weil das laut Changelog ein paar Fixes für die ?65-Geräte von Siemens bringt.

Meine Systemvoraussetzungen:

traffic@castle:~> rpm -qa | grep blue
bluez-hcidump-1.11-2
gnome-bluetooth-0.5.1-5.1
bluez-libs-2.10-2
yast2-bluetooth-2.10.8-2
gnome-bluetooth-devel-0.5.1-5.1
bluez-test-2.10-15.1
bluez-firmware-1.0-3
bluez-utils-2.10-15.1
bluez-cups-2.10-15.1

traffic@castle:~> rpm -qa | grep obex
openobex-1.0.1-53
openobex-devel-1.0.1-53

traffic@castle:~> locate obex
/opt/gnome/bin/gnome-obex-send
/opt/gnome/bin/gnome-obex-server
/opt/gnome/include/libbtctl/btobex-client.h
/opt/gnome/include/libbtctl/btobex.h
/opt/gnome/include/libbtctl/obex-client-source.h
/opt/gnome/include/libbtctl/obex-server-source.h
/opt/gnome/share/applications/gnome-obex-server.desktop
/opt/gnome/share/gnome-bluetooth/gnome-obex-send.glade
/opt/gnome/share/gtk-doc/html/libbtctl/libbtctl-obex-server-source.html
/usr/bin/openobex-config
/usr/include/openobex
/usr/include/openobex/obex.h
/usr/include/openobex/obex_const.h
/usr/lib/libopenobex.a
/usr/lib/libopenobex.la
/usr/lib/libopenobex.so
/usr/lib/libopenobex.so.1
/usr/lib/libopenobex.so.1.0.0
/usr/share/aclocal/openobex.m4
/usr/share/doc/packages/openobex
/usr/share/doc/packages/openobex/AUTHORS
/usr/share/doc/packages/openobex/ChangeLog
/usr/share/doc/packages/openobex/COPYING
/usr/share/doc/packages/openobex/NEWS
/usr/share/doc/packages/openobex/README
/usr/share/doc/packages/openobex/README.win32

Alle sonstigen Abhängigkeiten sind ebenfalls erfüllt, "./configure" läuft auch einwandfrei durch. Leider bricht "make" trotzdem immer mit folgendem Fehler ab:

/bin/sh ../libtool --mode=link gcc -g -O2 -g -Wall -Wmissing-declarations -Wmissing-prototypes -Wall -L/usr/lib -g -Wall -o obexftpd obexftpd.o -lopenobex -lbluetooth ../obexftp/libobexftp.la ../cobexbfb/libcobexbfb.la ../bfb/libbfb.la
gcc -g -O2 -g -Wall -Wmissing-declarations -Wmissing-prototypes -Wall -g -Wall -o .libs/obexftpd obexftpd.o -L/usr/lib /usr/lib/libopenobex.so /usr/lib/libbluetooth.so ../obexftp/.libs/libobexftp.so ../cobexbfb/.libs/libcobexbfb.so ../bfb/.libs/libbfb.so -Wl,--rpath -Wl,/usr/local/lib
obexftpd.o(.text+0x79): In function `start_server':
/home/traffic/obexftp-0.10.7/apps/obexftpd.c:119: undefined reference to `OBEX_ServerAccept'
collect2: ld returned 1 exit status
make[2]: *** [obexftpd] Fehler 1
make[2]: Leaving directory `/home/traffic/obexftp-0.10.7/apps'
make[1]: *** [all-recursive] Fehler 1
make[1]: Leaving directory `/home/traffic/obexftp-0.10.7'
make: *** [all] Fehler 2

Weitere Informationen:

traffic@castle:~> nm /usr/lib/libopenobex.so | grep ServerAccept
000018c0 t OBEX_ServerAccept

traffic@castle:~> cat /usr/include/openobex/obex.h | grep ServerAccept
obex_t *OBEX_ServerAccept(obex_t *server, obex_event_t eventcb, void * data);

Was kann man da machen?

nunja
30.03.05, 16:30
Gleiches Problem hatte ich mit 0.10.6. Antwort vom Entwickler:
Zeile 119 in apps/obexftpd.c löschen. Der Server ist eh noch nicht fertig.
Gesagt, getan, Übersetzungsvorgang lief durch.

traffic
31.03.05, 01:09
Super, danke, hat geklappt! Allerdings habe ich in einem anderen Forum eine Lösung gefunden, die ebenfalls funktioniert:

- alle Verweise auf obexftpd aus den Makefile.am-Dateien entfernen, so dass obexftpd gar nicht erst kompiliert wird, sondern nur obexftp
- im Quellcodeverzeichnis autoreconf ausführen, damit die Makefiles aus den geänderten Makefile.am-Dateien neu erzeugt werden
- anschließend funktioniert ./configure && make && make install wieder

Trotzdem danke!