LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Slackware (https://www.linuxquestions.org/questions/slackware-14/)
-   -   help with Kodak scanner and sane (https://www.linuxquestions.org/questions/slackware-14/help-with-kodak-scanner-and-sane-4175527110/)

BCarey 12-02-2014 01:15 PM

help with Kodak scanner and sane
 
Hi,

I wonder if anyone can help me install a Kodak i940 scanner on Slackware64 14.1. Just plugging it in did not work (detected by lsusb but not by xsane). Kodak has official drivers posted on their site in the form of rpms (Ubuntu). I tried converting these with rpm2tgz and installing them with no joy. Is there a way I can manually install what is necessary for sane to use the scanner? What files are actually necessary for sane to find and use a scanner? I've done MFC scanners but only Brother.

Thanks in advance,
Brian

saulgoode 12-02-2014 03:38 PM

Quote:

Originally Posted by BCarey (Post 5278333)
Kodak has official drivers posted on their site in the form of rpms (Ubuntu). I tried converting these with rpm2tgz and installing them with no joy.

My understanding is that the drivers supplied by Kodak are 32-bit only. You might wish to try using Kodak's drivers after installing Alien Bob's Multi-lib.

knudfl 12-02-2014 03:49 PM

"64 — Bit Linux Driver" is included here ....

http://graphics.kodak.com/DocImaging...vers/index.htm

BCarey 12-02-2014 06:38 PM

I did use the 64bit drivers from the kodak site mentioned. There are actually 4 packages in the bundle. Converting and installing them all does not seem to make the scanner visible to sane.

Brian

ljb643 12-02-2014 07:04 PM

Quote:

Originally Posted by BCarey (Post 5278333)
What files are actually necessary for sane to find and use a scanner?

(Sorry if I miss something - I'm doing this mostly from memory)

Start with /etc/sane.d/dll.conf which needs to have an uncommented line for the driver name 'NAME'. (For example, NAME is epson2 for me.)

The scanner driver itself (the backend) is found in /usr/lib/sane/libsane-NAME.so (this is 32bit, not sure if 64bit is different). SANE knows this path, so if the driver is elsewhere you need to link it from here.

SANE backends usually read their configuration from /etc/sane.d/NAME.conf

rkelsen 12-02-2014 08:14 PM

I've not had much success with an old Canon scanner and SANE. I'm not sure why.

This is on Slackware64-14.0 with multilib and Slackware64-14.1 without multilib. Canon don't officially support it on 64 bit systems.

It does, however, work perfectly with Hamrick's VueScan: http://www.hamrick.com/ Unfortunately, it's proprietary and a little expensive, but it'll make your scanner work properly.

I'll be watching this thread with interest, because I'd love to know how to make it work with open source software.

BCarey 12-03-2014 09:22 AM

Quote:

Originally Posted by ljb643 (Post 5278487)
(Sorry if I miss something - I'm doing this mostly from memory)

Start with /etc/sane.d/dll.conf which needs to have an uncommented line for the driver name 'NAME'. (For example, NAME is epson2 for me.)

The scanner driver itself (the backend) is found in /usr/lib/sane/libsane-NAME.so (this is 32bit, not sure if 64bit is different). SANE knows this path, so if the driver is elsewhere you need to link it from here.

SANE backends usually read their configuration from /etc/sane.d/NAME.conf

I put libsane-kds_i900.so.1.0.24 in /usr/lib/sane and /usr/lib64/sane. I added a line in /etc/sane.d/dll.conf kds_i900. I put kds_i900.conf in /etc/sane.d. The scanner is not recognized.

Since I have a multilib system I tried converting and installing the 32 bit packages instead. That did not help.

Any other ideas?

@rkelson: The scanner is Kodak not Canon.

glorsplitz 12-03-2014 12:40 PM

Hi, I got stand alone Canon Lide 25 scanner to work a while back, now I'm using Canon MP620 Slackware 64.

I used SANE: Supported Devices to look for compatibility.

Yours is not listed but I found Running Kodak Scanmate i940 with Linux.

Person said "I managed to get the scanner running with Fedora 20 64-bit. This are the steps which resulted in success:

Install a libudev.so.0 in the system. I forced in a package from a previous Fedora version. A similar step should work on other operating systems too. Modify the setup script in a way that it does not break because of a missing libudev.so.0 and does not try to install it. Make sure it runs through. Make sure the sane binaries and all applications which should be able to see the scanner are installed in 32-bit and have dependencies fullfilled After that the scanner worked for me."

Maybe something helps? I see libudev.so.0 on my system.

BCarey 12-03-2014 01:05 PM

Thanks for the link. I'll try installing the 32 bit version of xsane.

Brian

ljb643 12-03-2014 08:54 PM

Quote:

Originally Posted by BCarey (Post 5278815)
I put libsane-kds_i900.so.1.0.24 in /usr/lib/sane and /usr/lib64/sane. I added a line in /etc/sane.d/dll.conf kds_i900. I put kds_i900.conf in /etc/sane.d. The scanner is not recognized.

Maybe you did this too and didn't say, but make sure you have a link libsane-*.so.1 pointing to the actual library. Also a link named libsane-*.so pointing there too for good measure, although I think sane only uses the .so.1. Like this:

Code:

libsane-kds_i900.so -> libsane-kds_i900.so.1.0.24
libsane-kds_i900.so.1 -> libsane-kds_i900.so.1.0.24

Next try "scanimage -L" and see if it finds anything. (If it doesn't, you could also try it as root, to make sure it isn't a permissions problem.)

For me, the next step if it still fails would be "strace scanimage -L 2> log" and examine the log, but I hesitate to recommend that unless you've read strace logs before.

BCarey 12-04-2014 06:49 PM

Quote:

Originally Posted by ljb643 (Post 5279128)
Maybe you did this too and didn't say, but make sure you have a link libsane-*.so.1 pointing to the actual library. Also a link named libsane-*.so pointing there too for good measure, although I think sane only uses the .so.1. Like this:

Code:

libsane-kds_i900.so -> libsane-kds_i900.so.1.0.24
libsane-kds_i900.so.1 -> libsane-kds_i900.so.1.0.24

Next try "scanimage -L" and see if it finds anything. (If it doesn't, you could also try it as root, to make sure it isn't a permissions problem.)

For me, the next step if it still fails would be "strace scanimage -L 2> log" and examine the log, but I hesitate to recommend that unless you've read strace logs before.

I had not created those links but after I did there was no change. scanimage -L does not find the scanner.

So I tried the 32 bit version of sane with the 32 bit drivers from kodak (I had to create net-snmp-compat32 for it to run). After manually creating the /usr/lib links now scanimage finds the scanner. Hooray! Then I created a compat32 version of gimp and I was able to launch 32 bit xsane which discovers the scanner. So I think I'm almost there. Everything works as root user.

The hopefully last problem to solve is that, as a regular user I can see the printer with scanimage -L but when I try to use xsane I get an error "Failed to open device 'kds_i900:i900': Invalid argument" My regular user is part of both lp and scanner groups.

Brian

glorsplitz 12-04-2014 09:59 PM

This is usb right?

from here XSane failed to open device intermittent MFC-240c brother maybe?

What I did:
Code:
lsusb | grep Brother

which gave me
Code:
Bus 004 Device 002: ID 04f9:01ab Brother Industries, Ltd MFC-240C

so, I entered, as instructed by aouie:
Code:
sudo chmod a+w /dev/bus/usb/004/002

and the scanner software fired up perfectly!


OOPS! or maybe the post after that #15, I didn't read far enough.

BCarey 12-05-2014 08:33 AM

I needed to create a udev rule for the scanner so it would get the lp group permissions. Now all is well.

Thanks to all of you for your help.

Brian

BCarey 12-12-2014 12:08 PM

I'm trying to install the scanner now on a different computer, also slack64 14.1 with multilib installed. I followed the same steps as before, to wit:

1. remove 64 bit sane and xsane and install the 32 bit version.
2. create and install compat32s for gimp and net-snmp.
3. create the links in /usr/lib as described above.
4. added a line to /etc/sane.d/dll.conf
5. scanimage -L finds the scanner

However when I try to launch xsane I get the following:

[code]
(xsane:7697): GdkPixbuf-WARNING **: Error loading XPM image loader: Unable to load image-loading module: /usr/lib64/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-xpm.so: /usr/lib64/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-xpm.so: wrong ELF class: ELFCLASS64
Segmentation fault
[\code]

I have the compat32 package for gdk-pixbuf2 installed. For some reason the 32 bit version of xsane is looking for the wrong version of gdk-pixbuf.

Any ideas?

Thanks,
Brian


All times are GMT -5. The time now is 12:28 PM.