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

Takenoshita Koyo email@hidden
2010年 5月 17日 (月) 11:58:50 JST


中田さん

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

まず、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コマンドで確認してみてください。

email@hidden さんは書きました:
> はじめまして
> 中田と申します。
> 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 メーリングリストの案内