Sane - Make bricht ab...

Hier genanntes Problem hab ich auch, wobei ich das soweit eingrenzen kann, dass es an dem dll backend hängt.
Das lässt sich auch nicht deaktivieren, wobei es, nach meinen Erkenntnissen, auch reicht den entsprechenden Treiber direkt anzusprechen, bei mir mustek_usb.
Genauso hab ich das seit monaten auf einem immer aktuellen Gentoo ~x86 laufen.

Edit
Ufff da war ich wohl etwas daneben, natürlich über die dll.conf, wo dann das entsprechende Backend aktiviert wird.
damit brauchich dann auch das "dll" Backend, welches nicht kompiliert.



Vielleicht hilft das etwas ....


Update

Interessant in dem Zusammenhang die sanei_backend.h, welche bei mir an der, den entsprechenden Stellen folgendermaßen aussieht:


Code:
/** @name Declaration of entry points:
 * @{
 */
extern SANE_Status ENTRY(init) (SANE_Int *, SANE_Auth_Callback);
extern SANE_Status ENTRY(get_devices) (const SANE_Device ***, SANE_Bool);
extern SANE_Status ENTRY(open) (SANE_String_Const, SANE_Handle *);
extern const SANE_Option_Descriptor *
  ENTRY(get_option_descriptor) (SANE_Handle, SANE_Int);
extern SANE_Status ENTRY(control_option) (SANE_Handle, SANE_Int, SANE_Action,
                                          void *, SANE_Word *);
extern SANE_Status ENTRY(get_parameters) (SANE_Handle, SANE_Parameters *);
extern SANE_Status ENTRY(start) (SANE_Handle);
extern SANE_Status ENTRY(read) (SANE_Handle, SANE_Byte *, SANE_Int,
                                SANE_Int *);
extern SANE_Status ENTRY(set_io_mode) (SANE_Handle, SANE_Bool);
extern SANE_Status ENTRY(get_select_fd) (SANE_Handle, SANE_Int *);
extern void ENTRY(cancel) (SANE_Handle);
extern void ENTRY(close) (SANE_Handle);
extern void ENTRY(exit) (void);
 
Zuletzt bearbeitet:
Ufff da war ich wohl etwas daneben, natürlich über die dll.conf, wo dann das entsprechende Backend aktiviert wird.
damit brauchich dann auch das "dll" Backend, welches nicht kompiliert.
Was ist denn die entsprechende Fehlermeldung? Ich kann genauso wie Oliver keinen Fehler beim Bauen nachvollziehen. Ich habs jetzt auch extra noch mal nur mit dem mustek_usb-Backend erfolgreich gebaut.
Bist Du auf dem aktuellen Stand (Hast Du svn up gemacht?)?
Hast Du mal rm -rf $FREETZ/source/sane-backends-1.0.19 versucht bevor Du make ausführst?

Interessant in dem Zusammenhang die sanei_backend.h, welche bei mir an der, den entsprechenden Stellen folgendermaßen aussieht:
Wieso is das interessant?
 
@ tehron

die Fehlermeldung wurde bereits gepostet, ich kann es gern nochmal tun:

Code:
In file included from dll.c:213:
dll-preload.c:1: error: conflicting types for 'sane_dll_init'
../include/sane/sanei_backend.h:110: error: previous declaration of 'sane_dll_init' was here
dll-preload.c:1: error: conflicting types for 'sane_dll_exit'
../include/sane/sanei_backend.h:125: error: previous declaration of 'sane_dll_exit' was here
dll-preload.c:1: error: conflicting types for 'sane_dll_get_devices'
../include/sane/sanei_backend.h:111: error: previous declaration of 'sane_dll_get_devices' was here
dll-preload.c:1: error: conflicting types for 'sane_dll_open'
../include/sane/sanei_backend.h:112: error: previous declaration of 'sane_dll_open' was here
dll-preload.c:1: error: conflicting types for 'sane_dll_close'
../include/sane/sanei_backend.h:124: error: previous declaration of 'sane_dll_close' was here
dll-preload.c:1: error: conflicting types for 'sane_dll_get_option_descriptor'
../include/sane/sanei_backend.h:114: error: previous declaration of 'sane_dll_get_option_descriptor' was here
dll-preload.c:1: error: conflicting types for 'sane_dll_control_option'
../include/sane/sanei_backend.h:116: error: previous declaration of 'sane_dll_control_option' was here
dll-preload.c:1: error: conflicting types for 'sane_dll_get_parameters'
../include/sane/sanei_backend.h:117: error: previous declaration of 'sane_dll_get_parameters' was here
dll-preload.c:1: error: conflicting types for 'sane_dll_start'
../include/sane/sanei_backend.h:118: error: previous declaration of 'sane_dll_start' was here
dll-preload.c:1: error: conflicting types for 'sane_dll_read'
../include/sane/sanei_backend.h:120: error: previous declaration of 'sane_dll_read' was here
dll-preload.c:1: error: conflicting types for 'sane_dll_cancel'
../include/sane/sanei_backend.h:123: error: previous declaration of 'sane_dll_cancel' was here
dll-preload.c:1: error: conflicting types for 'sane_dll_set_io_mode'
../include/sane/sanei_backend.h:121: error: previous declaration of 'sane_dll_set_io_mode' was here
dll-preload.c:1: error: conflicting types for 'sane_dll_get_select_fd'
../include/sane/sanei_backend.h:122: error: previous declaration of 'sane_dll_get_select_fd' was here

das weiter oben sind die entsprechenden Zeilen aus der sanei_backend.h
 
Hast Du nicht versucht, was ich vorgeschlagen habe? Mach das Update, damit Du den Patch von Oliver bekommst und lösch das Verzeichnis mal komplett. Die Datei dll-preload.c wird dynamisch generiert. Evtl. ging da was schief.
 
@tehron

Bis auf das Changeset/Patch ist alles da, wobei ich eh immer den neuesten CVS zieh, da die 1.0 nie sauber durchlief:

Fehler beim Kompilieren oder nicht funktionierend Downloadlinks

meine dll-preload.c sieht so aus:

Code:
dll-preload.c
PRELOAD_DECL(dll)
static struct backend preloaded_backends[] = {
PRELOAD_DEFN(dll)
};

Ansonsten ist hier alles installiert, in aktueller Version vorhanden, das sollte nicht das Problem sein.

sane-backends Verzeichnis gelöscht, jedoch ändert das nix .. die .c sieht immer gleich aus und ich bekomm auch jedesmal den gleichen Fehler.

monentan Revision 2681 hier ...

die vorhandenen Patches werden auch sauber angewendet:

Code:
applying patch file make/sane-backends/patches/100-no_docs_and_translations.patch
patching file Makefile.in
----------------------------------------------------------------------
applying patch file make/sane-backends/patches/200-install-devel.patch
patching file Makefile.in
patching file include/Makefile.in
patching file backend/Makefile.in
----------------------------------------------------------------------
applying patch file make/sane-backends/patches/300-config_path.patch
patching file configure
----------------------------------------------------------------------
 
Zuletzt bearbeitet:
Aus irgendeinem Grund wird bei Dir eine andere dll-preload.c erzeugt. Ich weiß noch nicht warum.
Welche Auswahl hast Du denn in menuconfig unter SANE getroffen?

Meine dll-preload.c sieht so aus:
Code:
static struct backend preloaded_backends[] = {
{ 0, 0, 0, 0, 0, 0, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }}
};
Deine Datei durch meine zu ersetzen bringt Dir aber auch nichts, weil sie von make jedes mal gelöscht und neu erzeugt wird. Da müßtest Du dann auch das Makefile ändern.
 
@tehron

Um den Fehler einzugrenzen hab ich nur das aktiviert, was ich nicht abwählen konnte:

Code:
  ---   SANE (libsane.so) 
  ---   dll backend


Was ich sonst noch aktiviere oder deaktiviere (unter SANE 1.0.19)
hat keinen Einfluss

Edit

wenn ich die dll-preload.c von Hand ändere geht es, egal was ich sonst auswähle .. muss ich nur sicherstellen dass in der dll-preload.c auch genau das steht .. scheint auch alles vorhanden zu sein ..
 
Zuletzt bearbeitet:
Es ist nicht umsonst unstable ;)
 
Schon klar, wollts nun auch mal versuchen
nachdem ich nun bereits 2 Drucker , Festplatte, Stick angeschlossen hab
(die Drucker an verschiedenen FritzBoxen)

Nun stellt sich die Frage brauch ich das net backend oder nicht?

Und das jedesmal die dll-preload.c editieren, oder ersetzen hmmm
 
Das net-Backend würdest Du nur brauchen, wenn Du auf der Fritzbox z.B. über scanimage einen Scanner auf einem anderen Rechner ansprechen willst. Also: nein.
 
ah .. genau vor jahren hab ich das mal gemacht .. mit nem Bekannten .. der das von sich zu hause dann gescant hat und umgedreht ^^
 
Versuch mal das dll-Backend auszukommentieren.
Code:
denk@wopr-debian:~/fritzbox/freetz-trunk$ svn diff make/sane-backends/sane-backends.in
Index: make/sane-backends/sane-backends.in
===================================================================
--- make/sane-backends/sane-backends.in (revision 2681)
+++ make/sane-backends/sane-backends.in (working copy)
@@ -280,7 +280,7 @@
 endif

 ifeq ($(strip $(FREETZ_SANE_BACKEND_dll)),y)
-SANE_BACKENDS+=dll
+# SANE_BACKENDS+=dll
 endif

 $(PKG)_CONFIG_SUBOPTS += FREETZ_SANE_BACKEND_dll

Ich hab das in die Liste BACKENDS aufgenommen, aber das darf da nicht rein. Es wird dann eh zu ALL_BACKENDS hinzugefügt.
Ich hatte das so gemacht, weil sonst alle Backends gebaut werden, wenn man keines ausgewählt hat. Und bei mir hat es so keine Probleme gemacht.

Edit:
Wobei ich immer noch nicht verstehe, warum's so nicht geht bei Dir... Normalerweise sollte DLL_PRELOAD leer sein, weil die entsprechenden Optionen nich gesetzt sind. Auszug aus dem configure-Skript:
Code:
if test "${enable_dynamic}" != yes || test "${enable_preload}" = "yes"; then
  echo "preloading backends into DLL"
  DLL_PRELOAD="\$(PRELOADABLE_BACKENDS)"
else
  DLL_PRELOAD=""
fi
 
Zuletzt bearbeitet:
ich guck mal .. ob das jedoch etwas daran ändert dass dann auf der box noch etwas nicht stimmt ist fraglich ...

So wie ich dachte das mal gelesen zu haben ist es noch nicht .. da mussich wohl noch basteln ...
 
Hallo, nach heutigem Checkout habe ich sahne wieder getestet und glaube ich habe einen Fehler gefunden:

Wenn ich Sahne mit epson ohne epson2 baue, kommt keine fehlermeldung, wenn ich aber mit epson2 baue, kommt dll-error... Wie von mir schon beschrieben...
 
@GuruHacker

zieh dir mal den neuesten Trunk, mit dem geht es.

aktuell die 2688

Alle Anderungen, die weiter oben angeführt sind, sind eingeflossen.
 
Hi,

Ich weiß das ihr es nur gut meint, aber mit 2688 läuft epson2 backend immernochnicht.

Und mit epson backend läuft mein Epson Stylus DX7400 nicht, also brauche ich das epson2 backend.
 
@ GuruHacker:

da muss ich dir rechtgeben.
Das bricht mit folgendem Fehler ab:
Ich hab das nicht ganz mitbekommen ob das bei dir genauso ist


Code:
/gcc-4.2.1-uClibc-0.9.29/mipsel-linux-uclibc/usr/lib
../backend/.libs/libsane.so: undefined reference to `sanei_tcp_write'
../backend/.libs/libsane.so: undefined reference to `sanei_udp_recvfrom'
../backend/.libs/libsane.so: undefined reference to `sanei_udp_close'
../backend/.libs/libsane.so: undefined reference to `sanei_udp_open_broadcast'
../backend/.libs/libsane.so: undefined reference to `sanei_tcp_read'
../backend/.libs/libsane.so: undefined reference to `sanei_tcp_close'
../backend/.libs/libsane.so: undefined reference to `sanei_udp_write_broadcast'
../backend/.libs/libsane.so: undefined reference to `sanei_tcp_open'
collect2: ld returned 1 exit status
make[2]: *** [saned] Fehler 1
make[2]: *** Warte auf noch nicht beendete Prozesse...
/opt/freetz/7270/freetz-trunkdann/toolchain/target/bin/mipsel-linux-uclibc-gcc -o .libs/scanimage scanimage.o stiff.o  ../lib/liblib.a ../backend/.libs/libsane.so -ldl /opt/freetz/7270/freetz-trunkdann/toolchain/build/gcc-4.2.1-uClibc-0.9.29/mipsel-linux-uclibc/usr/lib/libusb.so -lpthread -lm /opt/freetz/7270/freetz-trunkdann/toolchain/build/gcc-4.2.1-uClibc-0.9.29/mipsel-linux-uclibc/usr/lib/libjpeg.so -Wl,--rpath -Wl,/opt/freetz/7270/freetz-trunkdann/toolchain/build/gcc-4.2.1-uClibc-0.9.29/mipsel-linux-uclibc/usr/lib
../backend/.libs/libsane.so: undefined reference to `sanei_tcp_write'
../backend/.libs/libsane.so: undefined reference to `sanei_udp_recvfrom'
../backend/.libs/libsane.so: undefined reference to `sanei_udp_close'
../backend/.libs/libsane.so: undefined reference to `sanei_udp_open_broadcast'
../backend/.libs/libsane.so: undefined reference to `sanei_tcp_read'
../backend/.libs/libsane.so: undefined reference to `sanei_tcp_close'
../backend/.libs/libsane.so: undefined reference to `sanei_udp_write_broadcast'
../backend/.libs/libsane.so: undefined reference to `sanei_tcp_open'

.. wenn ich das epson2 Backend aktiviere

auch nach einem "make sane-backends-dirclean"
 
Zuletzt bearbeitet:
Bei mir läuft es mit dem epson2-Backend wunderbar durch. Habt ihr zusätzlich noch andere Backends aktiviert? Gibts evtl. noch mehr Fehlermeldungen?
 
Bei mir läuft es mit dem epson2-Backend wunderbar durch. Habt ihr zusätzlich noch andere Backends aktiviert? Gibts evtl. noch mehr Fehlermeldungen?

jup ...
ich habs nur zusätzlich zum mustek_usb backend aktiviert gehabt um zu schauen ob ich damit nen Problem bekomm und wie weiter oben zusehen ist bekomm ich eins ..
 
Ich habe nur das epson_2 backend ausgewählt. Und bekomme EXAKT den gleichen fehler wie pengu ^^
 
Holen Sie sich 3CX - völlig kostenlos!
Verbinden Sie Ihr Team und Ihre Kunden Telefonie Livechat Videokonferenzen

Gehostet oder selbst-verwaltet. Für bis zu 10 Nutzer dauerhaft kostenlos. Keine Kreditkartendetails erforderlich. Ohne Risiko testen.

3CX
Für diese E-Mail-Adresse besteht bereits ein 3CX-Konto. Sie werden zum Kundenportal weitergeleitet, wo Sie sich anmelden oder Ihr Passwort zurücksetzen können, falls Sie dieses vergessen haben.