パッケージをコンパイルしてきれいに保つ

パッケージをコンパイルしてきれいに保つ

Linux(Debian)のキャリアの中で初めてソフトウェアを直接コンパイルする必要があるようです。

コンパイルプロセスはプロジェクトのウェブサイトで詳しく説明されています。しかし、私が理解していない1つのことがあり、始めるのを妨げます。

私はパッケージ管理(APT)をきれいできれいに保ちたいです。このプロジェクトをコンパイルするには、一度コンパイルが完了した後に必要とされない多くのパッケージ(ほとんどの* -devバージョン)をダウンロードする必要があります。

後で*-devパッケージを保存したくありません。

それで、コンパイル中にこれらのパッケージを一時的にインストールしてから(各パッケージ名を覚えておらず)、一度にすべて削除するための実用的な方法があるかどうか疑問に思いました。

答え1

パッケージがDebianリポジトリのどこかにある場合は、それを使用してbuild-depビルド依存関係をインストールし、「自動的に」インストール済みとしてマークすることができます。その後、これを使用してautoremoveこれらのビルドの依存関係をクリーンアップできます。

apt-get build-dep -o APT::Get::Build-Dep-Automatic=true WhatImBuilding
apt-get autoremove

この手法は、ビルド中のアイテムにどこかにビルド deps がある deb パッケージがまだ含まれていない場合は機能しません。ただし、このタイプのサポートを追加する Debian 機能の提案があります。https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=745769

管理するローカルリポジトリにビルドするすべてのアイテムに対して偽のパッケージを定義し、そこでビルドの依存関係を定義して、上記のアプローチが機能するようにすることができるようです。しかし、少し人為的です。/var/lib/apt/extended_statesインストールするパッケージを「自動」としてマークして、資格を得るように手動でファイルを編集することもできますが、autoremoveこれは危険です。

関連情報