web-dev-qa-db-ja.com

git-sourceからSANEをビルドすると、ローカルにビルドされた場合でも12.04でバックエンドの不一致が発生します

Ubuntu Precise Pangolinを使用すると、ソース(git-repo)からSANEを適切にインストールするのは簡単です。

私はこれに対する答えを見つけようとする他のスキャンの問題を発見しました。投稿された出力は、彼らが同じ問題に苦しんでいることを示しているようです.

GitからSANEソースをコンパイルしてUbuntu 12.04の新規インストールを実行すると、次のようになります。

$ scanimage -V
scanimage (sane-backends) 1.0.24git; backend version 1.0.22

(基本的に http://ubuntuportal.com/2012/02/how-to-get-an-Canon-canoscan-lide-100-scanner-to-work-in-ubuntu-11の指示に従いました-10linux-mint-12.html インストール前に正気がインストールされていないことを確認する他の情報が見つからなかったため)

私の主な関心はepson2-backendです。 1.0.22では、Epson V700の誤ったTPU設定を提供します(TPU2モードは1.0.22ではサポートされていませんでした。TPU2サポートがない場合、スキャナーは役に立ちません)。

透明モードに入るように要求すると、1.0.22の動作を示すため、epson2-backendは、作成したばかりの1.0.24ではなく、1.0.22からのものであることを意味します。

SANEをプレフィックス付きでローカルフォルダーにインストールして、そのバージョンのscanimageを実行すると、依然として不一致が発生します。

ただし、Ubuntu 12.04にアップグレードする前にSANEのカスタム1.0.22ビルドをインストールした別のコンピューターでは、同じSANE-gitをローカルでビルドしてインストールし、バックエンドと正しく一致させることができます。

$ ./SANE/bin/scanimage -V
scanimage (sane-backends) 1.0.24git; backend version 1.0.24
$ scanimage -V
scanimage (sane-backends) 1.0.22; backend version 1.0.22

このコンピューターでは、1.0.24はEpson V700でTPU2を見つける際に正しく機能します。

だから私は何が欠けている/間違っていますか?

(そして、システム全体で1.0.22を1.0.24に置き換えたいのですが、ローカルビルドはデバッグだけでした。)

どんな助けでも大歓迎です。

編集1:

Ubuntu 10.04で この手順 を使用してSANEをコンパイルしてみましたが、それは魅力のように機能しました。ただし、12.04にアップグレードすると(実際には12.04を実行したい)、SANEが1.0.22にダウングレードされました。 12.04で同じ一連の指示を試みたとき、私はまだ運が悪かった-バックエンドのミスマッチが再びあった(そしてlibusb-devがインストールされている)

編集2:

1.0.23 SANEドライバーを含むUbuntu 12.10に更新しました。 1.0.23で十分なので、12.10のソースからコンパイルしようとは思いませんでした。これは単なる回避策であり、Ubuntu 12.04の最新情報を知りたいと思っています。

編集3:

12.10で、上記のubuntu-guideを使用してSANEを構築し、ローカルディレクトリに構築することを試みました。両方の試行で、バックエンドの不一致が発生しました。

4
deinonychusaur

OK、私は同じ問題を抱えていた、これは私がそれを修正した方法です。

http://www.sane-project.org/README.linux の助けを借りて

まず、スキャナーを切断して、最初からやり直してください。 Xsane、およびsynapticを介して関連するすべてをアンインストールしました。 make installによってconfiguredsane-backends-gitであったものもすべてアンインストールしました。
次のように実行します。

    $ cd [your sane-backends-git folder]
    $ Sudo make uninstall

その後、libsane.so.1(およびsaneに関連するその他のアーカイブ)が残っているかどうかを確認しました。

    Sudo find / -name libsane.so.1

わかりました、すべてクリア。

xsaneといくつかのsynapticを使用してdependenciesを再度インストールする

xsane 0.998-3ubuntu2  
libsane 1.0.22-7ubuntu1
libsane-common 1.0.22-7ubuntu1
xsane-common 0.998-3ubuntu2
sane-utils 1.0.22-7ubuntu1

楽しみのためにscanimage -Vの出力をテストする

scanimage (sane-backends) 1.0.22; backend version 1.0.22

README.linux 1.0.24.gitドキュメントによると、次のステップ。

最初にlibsane.so.1を見つけます

Sudo find / -name libsane.so.1

また、システムに応じて、libsane.so.1が置かれているフォルダーに注意してください。私の場合:

/usr/lib/i386-linux-gnu/libsane.so.1

次に、sane-backends-gitフォルダーから

./configure 2>&1 | tee ~/thiscommandwritesalogfiletoyourhomefolder.log

2>&1 | teeは、ログファイルを定義した場所に書き込みます。それは便利ですが、義務ではありません。 usbがサポートされているconfigureの出力を確認してください。この情報には、最後の行の1つが含まれています。そうでない場合は、libusb-devを今すぐインストールして、configureを再実行する必要があります。

sane-gitを/usr/local/lib/にインストールします

$ make && Sudo make install

次に、最も重要な部分の1つであるシンボリックリンクの作成。ここでは、libsane.so.1が配置されているフォルダーのフォルダー名を変更する必要があることに注意してください。 (上記の方法を参照してください)

$ cd /usr/lib/i386-linux-gnu
$ Sudo ln -sf /usr/local/lib/libsane.so.1.0.24 libsane.so.1
$ Sudo ln -sf /usr/local/lib/sane/libsane.la libsane.la
$ cd -


copy udev rules file
$ Sudo cp tools/udev/libsane.rules /etc/udev/rules.d

スキャナーをUSBバスに再接続します

グループスキャナーに参加

Sudo adduser [YOU] saned
Sudo adduser [YOU] scanner 

およびlogoffおよびloginもう一度

それはそれを行う必要があります。 scanimage -Vは最新のlibsaneバックエンドを提供し、Xsaneは問題なく動作するはずです。

お役に立てば幸いです。

そして、、Xsaneのシャットダウンに問題がある場合は、ホームフォルダーの隠しファイル.saneを削除し、Ctrl-Hと入力します。 nautilus、そしてあなたはそれを見つけるでしょう。

3
grtz