zurachu / isd_for_linux

Linux, BSD, macOS で P/ECE と通信するコマンドラインツール
5 stars 2 forks source link

libusb-1.0のヘッダファイルを検索する場所を追加しました。 #19

Closed nsawa closed 4 years ago

nsawa commented 6 years ago

use_only_libusb-1.0版も、Linuxで問題なく動きました。 ただ、ビルド時にエラーが出たので、Makefileを変更しました。

Debianでは、libusb-1.0-0-devパッケージをインストールすると、libusb.hは/usr/include/libusb-1.0/に入るようです。 元のMakefileでは、-I/usr/local/include/libusb-1.0が指定されていたので、Debianではビルド時にエラーになりました。 screenshot from 2018-01-26 09-28-49

そこで、CXXFLAGSに-I/usr/include/libusb-1.0を追加した所、問題なくビルド出来て、実行出来るようになりました。 動作検証に使ったシェルスクリプトを添付します。 kensyou.zip

zurachu commented 6 years ago

libusb 0.1系にあったlibusb-config --cflags みたいなのあったら良いんですけどねー。 findで書くのがスマートでしょうか。

autch commented 6 years ago

libusb 1.x だと pkg-config が使えるので autoconf か CMake に探させるのがよいかと。

https://github.com/autch/isd_for_linux/tree/use-cmake とか。

zurachu commented 6 years ago

@autch 動作確認できたので、udevも含めてPRいただいても(あるいはしても)良いでしょうか?

nsawa commented 6 years ago

手元のDebian 9.2.1で動作確認しました。

autoconfの方法でも、CMakeの方法でも、問題無くビルド出来ました。 (最初、pkg-configをインストールし忘れていてビルドエラーが出て、少しハマリました(^^;

udevファイルも問題無く動作して、スーパーユーザ以外でも使えるようになりました。


質問させてください。

デバッグメッセージがたくさん出るようになりました。 screenshot from 2018-02-03 09-20-06

たぶん、デバッグバージョンでビルドされているためだと思うのですが、リリースバージョンでビルドする方法がわかりませんでした。 autoconfやCMakeでリリースバージョンでビルドするには、どうすればよいでしょうか?

zurachu commented 6 years ago

ビルドの確認はできてましたが、各コマンドの動作確認は抜けてました、すみません。 NDEBUGマクロを有効にしたら良いので、ちょっと確認します。

zurachu commented 6 years ago

@nsawa デバッグメッセージの件 https://github.com/zurachu/isd_for_linux/pull/21 にて対応しました。 問題なければこちらは閉じさせていただこうと思います!

nsawa commented 6 years ago

対応、有難うございます。 問題無く動作して、デバッグメッセージも出なくなりました。 クローズ、お願いします。