Forum Linux.debian/ubuntu [Résolu] error while loading shared libraries: libsane.so.1

Posté par  (site web personnel) . Licence CC By‑SA.
Étiquettes :
0
29
juil.
2013

Salut à tous !

Je vais détailler un peu le titre du thread : j'essaie de faire marcher un scanner OEM avec mon ordi. Ils proposent des pilotes Linux, et j'ai déjà réussi (il y a 2 ans) à le faire marcher. Et j'ai changé de machine, je veux réinstaller…

Et là, c'est le draâame :

$ scanimage -L
scanimage: error while loading shared libraries: libsane.so.1: cannot open shared object file: No such file or directory

Fort bien, allons voir ça de plus près :

$ locate libsane.so
/usr/lib/x86_64-linux-gnu/libsane.so.1
/usr/lib/x86_64-linux-gnu/libsane.so.1.0.22

Juste par acquis de conscience :

$ sudo sane-find-scanner
...
found USB scanner (vendor=0x079b [MFPrinter], product=0x0093 [ Laser Pro LL2 1]) at libusb:005:002
...

Pour info, mon scanner est dans un multifonction Konica Minolta PagePro 1480MF, aussi connu chez Phillips sous le nom de Laser MFD 6020. Et les forums ne parlent de ces p'tites bêtes que sur des sites en hongrois (j'ai du mal) ou russes (idem).

Mon ordi tourne sur elementary OS Luna, fork de Ubuntu, kernel 3.2

Des idées pour jouir du droit d'utiliser mon scanner ?

  • # man sane ?

    Posté par  . Évalué à 1.

    Où scanimage cherche-t-il libsane.so ?
    Dans la section Files du man de sane, il y a :

    /usr/local/lib/sane/libsane-*.a
    The static libraries implementing the backends.

    Un lien à mettre par là vers l'emplacement réel de libsane.so.1  ?

    Et plus bas dans le man, des problèmes sont répertoriés,
    notamment si scanimage -L ne voit pas le scanner :
    Try scanimage -L. If the scanner is not found, check that the back‐
    end's name is mentioned in /usr/local/etc/sane.d/dll.conf

    Je te laisse lire la suite.

    C'est juste une piste si tu n'en vois pas d'autres, pas de linux sous la main pour regarder de plus près.

  • # Plusieurs pistes

    Posté par  . Évalué à 1.

    Ce que je ferais c'est regarder ce que vaut la variable
    LD_LIBRARY_PATH
    peut être faire un coup de 'ldconfig -p' ,jeter un coup d'oeil sur '/etc/ld.so.conf'
    en root faire un 'ldconfig' ou un 'ldconfig -v'
    regarder les droit d'acces sur le fichier en question 'ls -l' des fois qu'il soit réserver à 'root'

  • # lddf

    Posté par  . Évalué à 1.

    Et ldd sur scanimage, ça donne quoi ? Exemple chez moi :

    # ldd /usr/bin/scanimage
        linux-gate.so.1 =>  (0x00604000)
        libsane.so.1 => /usr/lib/i386-linux-gnu/libsane.so.1 (0x006f4000)
        libc.so.6 => /lib/i386-linux-gnu/libc.so.6 (0x009e3000)
        libdl.so.2 => /lib/i386-linux-gnu/libdl.so.2 (0x00638000)
        /lib/ld-linux.so.2 (0x001c0000)
    
    • [^] # Re: lddf

      Posté par  . Évalué à 2.

      Tout juste. Il doit manquer la lib pour l'architecture i386 alors que l'architecture de la distribution est amd64. Si Luna est dérivée d'Ubuntu le support multiarch est à priori présent, il suffit d'installer le paquet pour i386:

      apt-get install libsane:i386

      • [^] # Re: lddf

        Posté par  . Évalué à 2.

        ca c'est valable si tu utilises un binaire 32bits sur une distrib 64bits.

        or, dans cet exemple, goeb propose une solution à Xinfe
        deux personnes, deux machines differentes.

        • [^] # Re: lddf

          Posté par  . Évalué à 1.

          Exact. Xinfe montre que seule la lib 64bits est installée et goeb montre la bonne méthode qui est d'utiliser ldd pour déterminer la lib manquante. Il se trouve que chez lui la lib 32bits est installée et qu'à l'évidence elle est manquante chez Xinfe.

          • [^] # Re: lddf

            Posté par  . Évalué à 2.

            en meme temps si Xinfe a une distrib 64bits, il devrait avoir un binaire 64bits qui appelle des lib 64bits
            il serait alors normal que la lib 32 bits soit absente.

      • [^] # Re: lddf

        Posté par  (site web personnel) . Évalué à 1.

        Ah, c'est très pertinent, tout ça. J'ai installé libsane:i386, puis je tombe sur la même erreur concernant libjpeg.
        libjpeg8:i386 était déjà installé, mais il voulait libjpeg62:i386.

        Je n'aurais pas trouvé le problème tout seul (ainsi que comment le résoudre, je n'ai jamais utilisé le multiach).

        Merci de l'aide.

        Par contre, je ne sais pas pourquoi les backends ne voient pas le scanner (en root ou pas). Seul sudo scanimage y arrive…

        Ensuite, je crois que je vais devoir me battre avec imagemagik, car le backend ne sort pas de jpg par défaut.

        • [^] # Re: lddf

          Posté par  . Évalué à 1.

          Peut être en ajoutant ton utilisateur dans le groupe scanner?

          sudo adduser toi scanner

          Sur une distro dérivée d'une dérivée de Debian, la doc devrait se trouver quelque part ici:
          less /usr/share/doc/sane-utils/README.Debian

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.