・kernel 2.6 と SANE
昨日の画像は Plamo-4.2 な環境で sane と xscaneimage で取り込んだのだけど、スキャナが使えるようになるまでちょっとハマってしまった。
確か 2.4 カーネルでは scanner.o というカーネルモジュールがあって、それを組み込めば sane-backends がスキャナを見つけてくれたのだけど、2.6 カーネルでは scanner.o というモジュール自体が見当たらない。「作り忘れたのかな?」と思って make menuconfig でコンパイルオプションを調べたり、ソースコードを grep してみてもUSB スキャナ用のモジュールらしきものは存在しない。「うーん、、」と思いながら SANE のホームページを調べたら、2.6 カーネルでは USB スキャナ用のモジュールはカーネルから無くなっていて libusb 経由で使うようになっているとのこと。
仕方ないので、libusb-0.10a をビルド&インストールしてからsane-backends-1.0.17 をビルド&インストールしたら sane-find-scanner で libusb 上のスキャナが見つかって
kojima@XEON[/mnt/Srcs/sane-frontends-1.0.14]% 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. found USB scanner (vendor=0x04b8 [EPSON], product=0x011e [EPSON Scanner]) at libusb:003:006 # Your USB scanner was (probably) detected. It may or may not be supported by # SANE. Try scanimage -L and read the backend's manpage.
sane-frontends-1.0.14 をビルド&インストールしたら、何とか xscanimage で画像を取り込めるようになりました。
しかし、このヘン、Linux は過去との互換性とかを遠慮なく切り捨ててゆくから、昔の常識が今の非常識になっていて結構大変だなぁ。大学の実習でも udev がらみの問題で Debian な環境から CD ドライブがうまく見えなかったりして結構苦労したのだけど、 新たな開発版もまだしばらくは出てきそうにないので、2.6 カーネルではこういう状況が続いていくのだろうか。。。