0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

libusbのインストール

Last updated at Posted at 2024-04-14

動機

libusb を入門しようとしたのですが、いろいろ躓いた点についてメモとして書いておきます。

現状の問題点

”libusb インストール”などと調べると、

sudo apt install libusb-1.0-0

してね、
と出てくるけど、これがよくない。
公式のGithubにあるExamplesを実行しようとすると、躓いきます。

libusb1.0.27

から、初期化の方法として

libusb_init_context(ctx, options, num_options)

という関数が追加されたようなのですが、
上記のaptを使ってインストールする方法だと、

libusb1.0.25

が入ってしまっていたようで、Examplesのコンパイルが通りませんでした。
以下に正しいインストール手順を示しておきます。

(参考:実行環境)

$: cat /etc/os-release
PRETTY_NAME="Ubuntu 22.04.3 LTS"
NAME="Ubuntu"
VERSION_ID="22.04"
VERSION="22.04.3 LTS (Jammy Jellyfish)"
VERSION_CODENAME=jammy
ID=ubuntu
ID_LIKE=debian
HOME_URL="https://www.ubuntu.com/"
SUPPORT_URL="https://help.ubuntu.com/"
BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"

ちゃんとGit cloneしたほうがいい

$: git clone https://github.com/libusb/libusb.git
(↓いるかわからないけど、一応実行しました。)
$: git checkout tags/v1.0.27 -b V1.0.27
$: ./configure --enable-udev --disable-static
$: make
#: make install

 L ./bootstarp.shを実行
 L ./Installを実行
 L ./configureファイルができるので、実行

1.0.27が入る。

バージョンはLIBUSB_API_VERSIONで定義されているので、
printf("%x\n", LIBUSB_API_VERSION);
すればよく、
これから、
https://libusb.sourceforge.io/api-1.0/group__libusb__misc.html#gaabe4bc36a83358685d36a6c853cbb4de
と比較してやれば、バージョンがわかります。
キャプチャ.PNG

注意;
また、一度1.0.25などを入れてしまった場合はautoremoveするなどしておきましょう。

おまけ

・コンパイルオプション

$: gcc testlibusb.c -l usb-1.0
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?