SnapScan S1500 を購入したのですが、 無事画像を取り込めるようになりました。 使用しているのは snv_134 です。
関係したソフトウェア
- SANE スキャナソフトウェア
OpenSolaris パッケージ image/scanner/xsane OpenSolaris パッケージ image/scanner/xsane/sane-backends OpenSolaris パッケージ image/scanner/xsane/sane-frontend xsane ソースコード http://www.xsane.org/ メニューを日本語にするため sane-backends ソースコード http://www.sane-project.org/ 最新の版にするため - GIMP 画像エディタ
OpenSolaris パッケージ image/editor/gimp 連係して動作するので - コンパイラ
OpenSolaris パッケージ sunstudioexpress sunstudio12u1 でも問題ないと思います
パッケージを導入
OpenSolaris のパッケージを導入しました。 パッケージマネージャーを使ったので、とても簡単。 GIMP と Sun Studio Express は以前に導入していたので、今回は何もしていません。
xsane のメニューを日本語に
xsane のソースコードをダウンロード、展開し、日本語のメッセージファイルを取り出します。
$ wget -P /PATH/TO/DOWNLOADDIR/ http://www.xsane.org/download/xsane-0.997.tar.gz $ gtar xfz /PATH/TO/DOWNLOADDIR/xsane-0.997.tar.gz $ cp -p xsane-0.997/po/ja.gmo /PATH/TO/CATALOGDIR/xsane.mo
sane-backends をコンパイル
OpenSolaris のリポジトリにある sane-backends は 1.0.19 で、
これには SnapScan S1500 のサポートが含まれていません。
/etc/sane.d/fujitsu.conf
を編集すれば認識しますが、
多々問題があるようです。
そこで、1.0.20 のソースコードをコンパイルして、必要なモジュールを使用します。
$ wget -P/PATH/TO/DOWNLOADDIR/ ftp://ftp.sane-project.org/pub/sane/sane-backends-1.0.20/sane-backends-1.0.20.tar.gz $ gtar xfz /PATH/TO/DOWNLOADDIR/sane-backends-1.0.20.tar.gz $ cd sane-backends-1.0.20/ $ CC=cc ./configure --prefix=/usr $ gmake $ gmake $ cp .libs/libsane-fujitsu.so.1 /PATH/TO/LIBDIR/
gmake 中にエラーが起きたのですが、無視して再度 gmake。これで最後までいきました。
xsane 起動スクリプトを作る
メッセージファイルとライブラリをシステム側に放り込むことも出来るのですが、
将来的に正式に入った場合にいやなことが起きるのはいやなので、
このようなスクリプトを作って自分の bin
に置きます。
NLSPATH
を設定すると、
自分のディレクトリにおいたメッセージファイルを参照させることが出来ます。
LD_PRELOAD
を設定すると、
指定した共有ライブラリを、
システム側に存在する同名のライブラリの代わり使用することが出来ます。
このライブラリの置き換えが正しく行われたかどうかは、
pldd
コマンドで調べることが出来ます。
$ cat ~/bin/xsane #!/usr/bin/sh NLSPATH="/PATH/TO/CATALOGDIR/%N.mo" export NLSPATH LD_PRELOAD=/PATH/TO/LIBDIR/libsane-fujitsu.so.1 export LD_PRELOAD exec /usr/bin/xsane "${@}"
GIMP に xsane 起動スクリプトを認識させる
GIMP を起動したことがない場合は、一度起動して終了させます。 そのあと、$ ln -s ../../bin/xsane ~/.gimp-2.6/plug-ins/
update_drv
コマンドを実行
SnapScan S1500 の電源をつなぎ、USB ケーブルを接続し、蓋を開きます。
ここで、update_drv
を実行します。
$ pfexec update_drv -a -i 'usb4c5,11a2.100' ugen
/etc/sane.d/fujitsu.conf
を更新する
エディタで、次のように更新しました。
$ diff -u /etc/sane.d/fujitsu.conf{.orig,} --- /etc/sane.d/fujitsu.conf.orig 水 12月 2 16:25:05 2009 +++ /etc/sane.d/fujitsu.conf 火 3月 9 21:04:39 2010 @@ -62,3 +62,6 @@ #scansnap S510 usb 0x04c5 0x1155 + +#scansnap S1500 +usb 0x04c5 0x11a2
デバイスにアクセスできるようにする
実は、まだデバイスにアクセスできるようにする、格好のいい方法を見つけられていません。
USB ケーブルを抜いたり蓋を閉じたり、つまり電源を切るとこのノードは消えるので、
一度所有者を変えればいいといったものではないのです。
とりあえずは力業の chown
を必要な時に実行しています。
$ ls -lL /dev/usb/4c5.11a2/0/ total 0 crw------- 1 root root 96, 2 3月 9 20:25 cntrl0 crw------- 1 root root 96, 3 3月 9 19:16 cntrl0stat crw------- 1 root root 96, 1 3月 9 19:16 devstat crw------- 1 root root 96, 4 3月 9 19:16 if0in1 crw------- 1 root root 96, 5 3月 9 19:16 if0in1stat crw------- 1 root root 96, 6 3月 9 19:16 if0out2 crw------- 1 root root 96, 7 3月 9 19:16 if0out2stat $ pfexec chown 自分の名前 /dev/usb/4c5.11a2/0/*
これでひとまず
これでひとまず動くようになりました。 実際には、かなりの試行錯誤になったので、 その記録はまた別途。
0 件のコメント:
コメントを投稿