特定のパッケージのすべてのビルド依存関係を削除するにはどうすればよいですか?


10

Ubuntu / Debianのソースから何かをコンパイルしたいときsudo apt-get build-dep PACKAGE_NAMEは、ターミナルで" "を実行することでビルドの依存関係を取得します。

コンパイルジョブが完了すると、(通常)役に立たなくなります。

それでは、特定のパッケージのすべてのビルド依存関係を削除するにはどうすればよいですか?

回答:


5

実行可能なプログラムのビルド依存関係を見つけるにapt-cache showsrc pkgnameBuild-Depends、他の情報の中で、で終わることが多いファイルをリストし-devます。-dev他のプログラムで必要なファイル(特にでマークされていないファイル)があるかどうかを確認することは価値があります。これはapt-cache depends file、およびを使用して確認できますapt-cache rdepends file。次の例では、ためのものですShotwell

apt-cache showsrc shotwell

ビルド依存:debhelper(> = 7.0.50〜)、m4、valac-0.16(> = 0.15)、libgee-dev(> = 0.5.0)、libgtk-3-dev(> = 3.0.11)、libexif -dev(> = 0.6.16)、libsqlite3-dev(> = 3.5.9)、libgexiv2-dev(> = 0.4.1-1build1)、libgnomevfs2-dev(> = 2.24.2)、libgphoto2-2-dev (> = 2.4.2)、libsoup2.4-dev(> = 2.26.0)、libxml2(> = 2.6.32)、libunique-3.0-dev(> = 1.0.0)、libwebkitgtk-3.0-dev(> = 1.1.5)、libgudev-1.0-dev(> = 145)、libdbus-glib-1-dev(> = 0.80)、libraw-dev(> = 0.13.1-2)、libusb-dev、libjson-glib -dev(> = 0.7.6)、libgstreamer0.10-dev(> = 0.10.28)、libgstreamer-plugins-base0.10-dev(> = 0.10.32)、python-scour、libunity-dev、liblaunchpad- Integration-3.0-dev(> = 0.1.36)、librest-dev

そこで一度にそれをすべて行うためのコマンドであるwebupd8サイトはしかし、私はいるようだという点で、それはUbuntuの現在のバージョンで確実に動作するようには思えないことを発見した削除すぎ。Pintaで試してみたところ、monoライブラリ全体を削除するよう提案されました。Launchpadで webupd8のようなコマンドを使用すると、このような問題が議論されます。あなたが見つけるかもしれない「解決策」を実験するときは非常に注意してください。

インストールされたパッケージautoremoveに対するコマンドがないのは残念ですbuild-dep


1
私は適性の方法を試しました、そうです、あなたは正しいです、それはあまりに多くを取り除きます...相互依存のためかもしれません。私が見つけたもう1つの方法は、(build-depコマンドを使用しながら)次のオプションを渡すことですsudo apt-get build-dep -o APT::Get::Build-Dep-Automatic=true PACKAGE_NAME。現在は、で削除できますapt-get autoremove。しかし、これはメインパッケージを削除した後にのみ機能します。
Khurshid Alam、2012

2
とにかく、私はちょうどそれを行う適切な方法がを使用していることを学びましたpbuilder。したがって、依存関係のインストール/アンインストールについて心配する必要はありません。
Khurshid Alam、2012

6

タンブルウィードの書き込み

今後は、のmk-build-deps代わりに... を使用することを強くお勧めしますaptitude build-dep。これにより、システムに[依存関係のある]パッケージがbuild-depsに残り、後で簡単にアンインストールできます。

mk-build-deps でインストールできます sudo apt install devscripts


4

オプション1:

によってインストールされたパッケージを覚えsudo apt-get build-dep PACKAGE_NAMEて、ビルド後にそれらを削除します。

オプション2:

apt-cache showsrc ビルド依存のリストを含む、ソースパッケージに関する多くの情報を提供します。

apt-cache showsrc PACKAGE_NAME

例えば:

$ apt-cache showsrc pithos
Package: pithos
Binary: pithos
Version: 0.3.17~git07dcbd86a1
Section: python
Maintainer: Kevin Mehall <km@kevinmehall.net>
Build-Depends: cdbs (>= 0.4.43), debhelper (>= 6), python, python-central (>= 0.6.11), python-distutils-extra (>= 2.10)
Architecture: all
Standards-Version: 3.8.2
Format: 1.0
Directory: pool/main/p/pithos
Files:
 cdf2129923e62bb62c246965453b40bd 2023031 pithos_0.3.17~git07dcbd86a1.tar.gz
 97689e8ada8be527d689f2c83415d3b0 1544 pithos_0.3.17~git07dcbd86a1.dsc
Python-Version: current
Checksums-Sha1: 35cbf3ae52922e50a0b81afcce2cd97a86afb254 2023031 pithos_0.3.17~git07dcbd86a1.tar.gz
Package-List: pithos deb python extra
Checksums-Sha256: 2b704d86f3dc1d36d180177d11e578bdcf74ea97b09b530144afe754e570b262 2023031 pithos_0.3.17~git07dcbd86a1.tar.gz
$ sudo apt-get remove cdbs debhelper python python-central python-distutils-extra

このオプションのリスクは、何かにとって重要なパッケージを削除する可能性があることです PACKAGE_NAMEのビルド以外のです。先に進む前に、削除するパッケージのリストを読んでください。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.