[Problem] FB 7490 mit Freetz: sane-backend: Kein dll backend, da dlopen:no (Workaround)

waltermyr

Neuer User
Mitglied seit
23 Mai 2020
Beiträge
3
Punkte für Reaktionen
1
Punkte
3
Moin,
bei meiner FB 7490 gibt es Probleme bei scanimage -L, so dass der angeschlossene HP Photosmart C3100 nicht erkannt wird:
Code:
export SANE_DEBUG_DLL=255 && scanimage -L
[sanei_debug] Setting debug level of dll to 255.
[dll] sane_init: SANE dll backend version 1.0.13 from sane-backends 1.0.27
[dll] sane_init/read_dlld: attempting to open directory `./dll.d'
[dll] sane_init/read_dlld: attempting to open directory `/mod/etc/sane.d/dll.d'
[dll] sane_init/read_dlld: using config directory `/mod/etc/sane.d/dll.d'
[dll] sane_init/read_dlld: considering /mod/etc/sane.d/dll.d/hplip
[dll] sane_init/read_config: reading dll.d/hplip
[dll] add_backend: adding backend `hpaio'
[dll] sane_init/read_dlld: done.
[dll] sane_init/read_config: Couldn't open config file (dll.conf): No such file or directory
[dll] sane_get_devices
[dll] load: ignoring attempt to load `hpaio'; compiled without dl support
[dll] sane_get_devices: found 0 devices

No scanners were identified. If you were expecting something different,
check that the scanner is plugged in, turned on and detected by the
sane-find-scanner tool (if appropriate). Please read the documentation
which came with this software (README, FAQ, manpages).
[dll] sane_exit: exiting
[dll] sane_exit: finished
Angeschlossen ist ein HP Photosmart C3100, der auch von sane-find-scanner korrekt erkannt wird.
Code:
sane-find-scanner 

  # sane-find-scanner will now attempt to detect your scanner. If the
  # result is different from what you expected, first make sure your
  # scanner is powered up and properly connected to your computer.

  # No SCSI scanners found. If you expected something different, make sure that
  # you have loaded a kernel SCSI driver for your SCSI adapter.
  # Also you need support for SCSI Generic (sg) in your operating system.
  # If using Linux, try "modprobe sg".

found USB scanner (vendor=0x03f0 [HP], product=0x5611 [Photosmart C3100 series]) at libusb:001:009
  # Your USB scanner was (probably) detected. It may or may not be supported by
  # SANE. Try scanimage -L and read the backend's manpage.

  # Not checking for parallel port scanners.

  # Most Scanners connected to the parallel port or other proprietary ports
  # can't be detected by this program.
Ebenso funktionieren die hp-utils (z.B. hp-status) korrekt.
Code:
hp-status 
hp-status  Copyright (C) 2008  Michael Denk
This program comes with ABSOLUTELY NO WARRANTY.
This is free software, and you are welcome to redistribute it
under certain conditions; see COPYING file for more details.

HP Photosmart C3100 series (hp:/usb/Photosmart_C3100_series?serial=XXXXXXXXXXX)
status: idle
Drucken geht (natürlich) ebenfalls.

Ich verwende freetz-master--f8f9f7d. Die config ist im Anhang.

Anm: Die Meldung stammt von Zeile 615 in sane-backends-1.0.27/backend/dll.c.

Für Hinweise, wie ich dieses Problem lösen kann wäre ich sehr dankbar.
 

Anhänge

waltermyr

Neuer User
Mitglied seit
23 Mai 2020
Beiträge
3
Punkte für Reaktionen
1
Punkte
3
Das Problem liegt leider tiefer:
Aus irgendeinem Grund wird beim sane-backend Paket während des configure prozesses
Code:
configure:13316: checking for dlopen in -ldl
configure:13350: result: yes
configure:13360: checking for dlopen
configure:13360: result: no
dlopen nicht erkannt. Damit ist das gesamte dll backend nicht nutzbar und auch nicht die hplip.

Vielleicht hat jmd. eine Idee, woher dieser Fehler kommt?

Wenn man in sane-backends-1.0.27/include/sane/config.h per Hand
Code:
* Define to 1 if you have the `dlopen' function. */
/* #undef HAVE_DLOPEN */
zu
Code:
* Define to 1 if you have the `dlopen' function. */
#define HAVE_DLOPEN 1
ändert und dann neu kompiliert, wird eine korrekte libsane.so.1.0.27 erzeugt und das scannen klappt.

Weitere Anmerkung:
Der hplip Patch 201-fix-include-libusb1.patch scheint nicht nötig, wenn man im Menu
FREETZ_LIB_libusb_0_WITH_COMPAT=y auswählt.
Ferner habe ich FREETZ_LIB_libjpeg=y , FREETZ_LIB_libpng12=y jpeg und FREETZ_LIB_libltdl=y ausgewählt.

scanimage arbeitet dann korrekt
Code:
export SANE_DEBUG_DLL=255 && scanimage -L
[sanei_debug] Setting debug level of dll to 255.
[dll] sane_init: SANE dll backend version 1.0.13 from sane-backends 1.0.27
[dll] sane_init/read_dlld: attempting to open directory `./dll.d'
[dll] sane_init/read_dlld: attempting to open directory `/mod/etc/sane.d/dll.d'
[dll] sane_init/read_dlld: using config directory `/mod/etc/sane.d/dll.d'
[dll] sane_init/read_dlld: considering /mod/etc/sane.d/dll.d/hplip
[dll] sane_init/read_config: reading dll.d/hplip
[dll] add_backend: adding backend `hpaio'
[dll] sane_init/read_dlld: done.
[dll] sane_init/read_config: Couldn't open config file (dll.conf): No such file or directory
[dll] sane_get_devices
[dll] load: searching backend `hpaio' in `/mod/lib:/mod/usr/lib:/usr/lib/freetz/sane'
[dll] load: trying to load `/mod/lib/libsane-hpaio.so.1'
[dll] load: couldn't open `/mod/lib/libsane-hpaio.so.1' (No such file or directory)
[dll] load: trying to load `/mod/usr/lib/libsane-hpaio.so.1'
[dll] load: couldn't open `/mod/usr/lib/libsane-hpaio.so.1' (No such file or directory)
[dll] load: trying to load `/usr/lib/freetz/sane/libsane-hpaio.so.1'
[dll] load: dlopen()ing `/usr/lib/freetz/sane/libsane-hpaio.so.1'
[dll] init: initializing backend `hpaio'
[dll] init: backend `hpaio' is version 1.0.0
[dll] sane_get_devices: found 1 devices
device `hpaio:/usb/Photosmart_C3100_series?serial=xxxxxxx' is a Hewlett-Packard Photosmart_C3100_series all-in-one
[dll] sane_exit: exiting
[dll] sane_exit: calling backend `hpaio's exit function
[dll] sane_exit: finished