[Armadillo:05180] Re: Armadillo-220 USBキーボードについて

email@hidden
2010年 5月 18日 (火) 11:15:39 JST


お世話になっております。
中田です。
 
ご説明、ありがとうございます。
 
ライブラリをArmadilloにコピーし、シンボリックリンクを貼ったところ、
実行することが出来ました。
 
しかし、以下の表示がされてしまい、
USBキーボードのキー入力を表示することが出来ませんでした。
 
USB-DEV: 0x05af/usb 1-1: usbfs: interface 1 claimed by usbhid while '0518_armusb1' sets config #1
0x0507 "?"
usb_set_configuration() error.
 
「usb_set_configuration() error.」という表示内容から、
 御社の『特集 : 最新組み込みLinux実践講座Part5』
( http://armadillo.atmark-techno.com/articles/sd-a500-embedded-course-ch5 )
に記載されているlibusbのサンプルコードの68行目に入ってしまったのだと思うのですが、
解決方法が分かりません。
 
使用しているUSBキーボードは、エレコム製 TK-UP87MPBKで、
ベンダIDは0x05AF、プロダクトIDは0x0507です。
 
この問題を解決するための、御教授のほど、よろしくお願いいたします。
 
 
中田さん

はじめまして。
竹之下といいます。

まず、libusbに関してですが、
> ./a.out: error while loading shared libraries: libusb-0.1.so.4: cannot 
> open shared object file: No such file or directory
これは、"libusb-0.1.so.4"という名前のシェアードライブラリのファイルが
見つからないために、このようなエラーが発生しています。

「●図1 ARM クロスlibusb パッケージのインストール」の手順をおこなった場合、
開発PCの"/usr/arm-linux-gnu/lib/"ディレクトリにライブラリファイルが
インストールされています。

[PC ~]$ ls -l /usr/arm-linux-gnu/lib/libusb*
lrwxrwxrwx 1 root root    19 2010-05-17 11:48 /usr/arm-linux-gnu/lib/libusb-0.1.so.4 -> libusb-0.1.so.4.4.4
-rw-r--r-- 1 root root 28892 2007-02-13 11:23 /usr/arm-linux-gnu/lib/libusb-0.1.so.4.4.4
-rw-r--r-- 1 root root 31710 2007-02-13 11:23 /usr/arm-linux-gnu/lib/libusb.a
-rw-r--r-- 1 root root  803 2010-05-17 11:48 /usr/arm-linux-gnu/lib/libusb.la
lrwxrwxrwx 1 root root    19 2010-05-17 11:48 /usr/arm-linux-gnu/lib/libusb.so -> libusb-0.1.so.4.4.4

これらのファイルのうち、"libusb-0.1.so.4.4.4"を、Armadilloの"/lib"ディレクトリに
コピーして、開発用PCと同じように"libusb.so"、"libusb-0.1.so.4"という名前でシンボリックリンク
を貼ってください。

libusbに限らず、「error while loading shared libraries」となった場合は、大抵Armadilloの
"/lib"ディレクトリにライブラリがないことが原因です。

次に、usbfsのマウントについてです。
> mount: Mounting usbfs on /proc/bus/usb failed: Device or resource busy
これは、既にusbfsがマウントされているために、エラーになっているのだと思います。

Armadillo-220のRecoverイメージとBaseイメージでは、"/etc/init.d/rc"でusbfsをマウント
しています。

mountコマンドで確認してみてください。

> はじめまして
> 中田と申します。
> Armadillo-220とUSBキーボードの接続について、質問があります。
> 
> Armadillo-220とUSBキーボードを接続して、
> 御社の『特集 : 最新組み込みLinux実践講座Part5』
> ( http://armadillo.atmark-techno.com/articles/sd-a500-embedded-course- 
> ch5 )
> に記載されているlibusbのサンプルコードを動かしてみようと思ったのですが、 
> うまくいきません。
> 手順は、以下のとおりです。
> 1. 上記サイトに記載されているlibusbのサンプルコードを、VMware上でコンパ 
> イル。
> 2. コンパイルしたファイルを、ftpを用いてarmadilloのpubフォルダ内にコピー。
> 3. armadilloのpubフォルダ内にて、権限を変更したのち実行。
>   # chmod +x a.out
>   # ./a.out
> すると、以下のエラーが表示されてしまいます。
> ./a.out: error while loading shared libraries: libusb-0.1.so.4: cannot 
> open shared object file: No such file or directory
> 
> また、メーリングリスト内にusbfsをmountする方法が記載されてましたので、
> ([Armadillo:01889] http://lists.atmark- 
> techno.com/pipermail/armadillo/2007-August/001889.html )
> Armadilloにusbfsをmountしようとしましたが、以下のエラーが表示されてしま 
> い、mountすることが出来ませんでした。
> mount: Mounting usbfs on /proc/bus/usb failed: Device or resource busy
> 
> この問題を解決するための、御教授のほど、よろしくお願いいたします。
> 
> ------------------------------------------------------------------------
> 2010 FIFA World Cup News [Yahoo!Sports/sportsnavi] 
> <http://pr.mail.yahoo.co.jp/southafrica2010/>
> 
> 
> ------------------------------------------------------------------------
> 
> _______________________________________________
> armadillo mailing list
> email@hidden
> http://lists.atmark-techno.com/cgi-bin/mailman/listinfo/armadillo


-- 
Koyo Takenoshita

_______________________________________________
armadillo mailing list
email@hidden
http://lists.atmark-techno.com/cgi-bin/mailman/listinfo/armadillo

--------------------------------------
2010 FIFA World Cup News [Yahoo!Sports/sportsnavi]
http://pr.mail.yahoo.co.jp/southafrica2010/
-------------- next part --------------
HTMLの添付ファイルを保管しました...
URL: <http://lists.atmark-techno.com/pipermail/armadillo/attachments/20100518/946b6237/attachment.html>


armadillo メーリングリストの案内