私はArch Linuxを使用しており、ドライバのソースコードをダウンロード、コンパイル、インストールするためのAURファイルを生成しようとしています。私が知りたいのは、コンパイルが成功するために必要なパッケージを確認する方法です(AURでこれらの依存関係を宣言できるようにする)。本当に長いファイルを解析する必要がありますか、configure
それとも良い方法がありますか?
編集する:それとも、AURの使用依存関係にビルド依存関係を追加してはいけませんか?
編集#2:これに対してAURを作成しようとしています。http://www.acs.com.hk/download-driver-unified/6258/ACS-Unified-Driver-Lnx-Mac-113-P.zip
答え1
ほとんどのパッケージはインストール時に役立つことを望んでいるため、README
またはファイルINSTALL
にはいくつかの依存関係情報が含まれています。そうでなければそうです。 checkconfigure
スクリプトは唯一の実際のオプションです(注:列挙の依存関係がautoconf
生成され、他の多くの構成スクリプトはパッケージがより使いやすくするために最後に依存関係の概要を印刷します)。configure.log
当面の問題については、Readmeが最も便利です。
Linux
- pcsclite 1.8.3 or above
- libusb 1.0.9 or above
- flex
- perl
- pkg-config
それでは、見てみましょう。 AURパッケージは、base
一連のパッケージがインストールされていると想定できるため、base-devel
推論するのは簡単です。私たちが見る依存関係を列挙すると、次のようになります。
pkg-config
A:、base-devel
私たちはそれを気にする必要はありません。perl
:はい、一部ですbase
。いいですね。flex
:base-devel
再び。libusb 1.0.9 or above
そしてpcsclite 1.8.3 or above
pacman -Ss libusb core/libusb 1.0.20-1 Library that provides generic access to USB devices pacman -Ss pcsclite community/pcsclite 1.8.16-1 PC/SC Architecture smartcard middleware library
リリースロールフォワードの利点は、ユーザーが最新のパッケージを持っていると仮定できることです(通常のユーザーであれば、pacman -Syu
AURパッケージをインストールする前にこれを実行します)。したがって、私たちは(内部的にPKGBUILD
)単に以下を行うことができます。
depends=(libusb pcsclite)
README
追加の注意:時にはINSTALL
話すパッケージを見つけるのは簡単ではありません。この場合Google Fu必要です。しかし、アーチには、pkgfile
どのデータベースとどのファイルがどのパッケージにあるかがあります。
AURパッケージに追加する依存関係を見つけるには、次のものをインストールすることをお勧めpkgfile
します。
pacman -S pkgfile
その後、疑わしいパッケージのライブラリを照会できます。
pkgfile -l <package> | grep lib