web-dev-qa-db-ja.com

パッケージのビルド依存関係を見つけるにはどうすればよいですか?

どのパッケージを見つけたいのですが

Sudo apt-get build-dep <package>

インストールされます(既にいくつかの依存関係がインストールされている場合は、それらも表示したい→そのため、上記の実行やシミュレーションでは不十分です)。コマンドラインが望ましい。

48
htorque

依存関係の依存関係を含む依存関係の完全なリストには、次を使用できます。

apt-rdepends --build-depends openoffice.org

このコマンドは、最初にapt-rdependsをインストールするように通知する場合があります。

次のコマンドを使用して、インストールされていないもののみを表示できます。

apt-rdepends --build-depends --print-state openoffice.org | grep NotInstalled

すべてのオプションについては、apt-rdepends --helpを参照してください。

:これはmassiveリストを生成します。
apt-rdepends -b xtermは、たとえば、8773行の出力を生成し、それを行うのに時間がかかります。

最上位のパッケージをビルドするために必要なパッケージ、つまりnautilusをビルドするために何をインストールする必要があるかだけを見たい場合は、次を実行します:

apt-rdepends --build-depends --follow=DEPENDS nautilus

これは、Carsten Thielの answerThe following NEW packages will be installed)とほぼ同等ですが、出力形式は少し良くなっています。また、最上位のパッケージのみが表示されますが、シミュレートされたapt-getは、それらの依存関係としてインストールされたパッケージも表示します。

これには、インストールされているパッケージも表示されます。ただし、デフォルトでインストールされるパッケージも表示される場合があります。残念ながら、apt-get build-depを実行した後にシステムをクリーンアップしようとすると、どちらの方法もあまり役に立ちません。私の知る限り、/var/log/apt/history.logにあるaptログファイルを見ることを除いて、インストールされたものを見つける信頼できる方法はありません。

45
Stefano Palazzo

オプション-s--simulate)は、何もせずに行われるすべてを出力します。そのためにroot権限さえ必要ありません。

apt-get -s build-dep <package>
17
Carsten Thiel
apt-cache showsrc <pkgname> | grep ^Build-Depends

showsrcは、特定のソースパッケージのdebian/controlファイルを表示します。次に、ソースからビルドするために必要なパッケージのリストを含む「Build-Depends」で始まる行をgrepします。

16
anonymous