私は、USB機器を操作したいとき、PCだとlibusbを使っている。
libusb-1.0だ。
これで作っておくと、WindowsでもLinuxでもOS Xでも動くという、便利な代物だ。
(もちろん、それぞれの環境にインストールなんかはいるけど)
久々にパソr・・・USB機器を操作しようと実行したら、なんだかよくわからない実行時warningが出てきた。
うーん、同じソースで動いていたのに・・・。
よくわからないときは、とりあえず最新バージョンにしてやってみよう、とネットを見ると、libusbxなるプロジェクトができていることを知った。
「今後のWindows版はlibusbxでやる」みたいなことが書いてあったが、libusbxもマルチプラットフォームのようなので、心配はいらんようだ。
ライブラリが変わると、実装を変更したりするのがめんどうなのだが、libusb-1.0からlibusbxに変更するのは、includeパスくらいだけだった。
私はcygwin環境を使っているのだが、こんな置き方をした。
- /usr/local/binにdllをコピー
- /usr/local/libに.aとdll.aをコピー
- /usr/local/includeにlibusbx-1.0/libusb-1.0.hをコピー
- .bashrcに「LIBRARY_PATH=/usr/local/lib」を追加
最後のは、LD_LIBRARY_PATHに/usr/local/libがあったけどlibusb-1.0のリンクが通らないので、やってみたらなった。
cygwinはLD_LIBRARY_PATHじゃなくてLIBRARY_PATHだとか、なんだとかかんだとかいろいろ出てきたけど、動けばよかろうなのだ。
置き換えたら、warningは出なくなった。
あまり納得はいってないが、動けばよかろうなのだ。
0 件のコメント:
コメントを投稿
コメントありがとうございます。
スパムかもしれない、と私が思ったら、
申し訳ないですが勝手に削除することもあります。
注: コメントを投稿できるのは、このブログのメンバーだけです。