ソースプログラムからインストールされたプログラムを管理するにはどうすればいいですか?

ソースプログラムからインストールされたプログラムを管理するにはどうすればいいですか?

私はサーバー(Debian または Centos を使用)を所有しており、常に最新のソフトウェアを利用できるため、ソースからプログラムをインストールしたいと考えています。ソースからプログラムをインストールする場合は、通常、次の手順に従います。

  1. ソース付きアーカイブをダウンロード
  2. 解凍してソースのあるディレクトリにcdする
  3. 走る./configure prefix=/usr/local
  4. make && sudo make install

その後、ダウンロードしたアーカイブとソースを含む解凍されたフォルダーを削除します。

私の質問は次のとおりです:

  1. プログラムを新しいバージョンに更新したい場合は、どのような手順を実行すればよいですか?
  2. このようにインストールされたプログラムを削除するにはどうすればいいでしょうか?
  3. インストール後にソースを含むフォルダーを削除するのは正しいですか、それとも後で役立ちますか?

答え1

必要ありません。独自の RPM を設定し、それらからリポジトリを作成し、ディストリビューションのツールに任せてください。

答え2

ソフトウェアをインストールする最も簡単な方法は、他の人にビルドしてもらうことです。最新のソフトウェアが必要な場合 (通常、サーバー上ではお勧めできません。安定したシステムを維持する方がよいでしょう)、CentOS (主要なディストリビューションの中で最も保守的) や Debian stable を使用しないでください。Fedora、Debian unstable、または Arch Linux を使用してください。

苦労して自分でプログラムをコンパイルしたい場合、またはいくつかのプログラムで最先端のものが必要な場合は、収納するインストールされたディレクトリツリーを管理します。原則として、各プログラムを などの独自のサブディレクトリにインストールし/usr/local/stow/PROGRAM_NAMEstow共通ディレクトリ にシンボリックリンクを作成します/usr/localプログラムの追跡クイックスタートガイドをご覧ください。

再コンパイルする場合(バグを修正した後など)に備えて、ソースを保存しておくことをお勧めします。それ以外の場合、通常はソースは必要ありません。

答え3

実際には、-tool のようなものを使用する必要がありますcheckinstall。これは、手動でビルドされたソフトウェアを debs/rpm にパッケージ化し、通常の方法でインストールおよび削除できるようにします (ubuntu のドキュメント:https://help.ubuntu.com/community/CheckInstall)。

手作業で作業を続けたい場合は、一部の makefile に target があり、uninstallこれを使用すると便利です。そうでない場合は、ファイルを手動でアンインストールするだけです。 を使用するとmake -n install、インストールで何が行われているかが表示されます。どちらの場合も、元のソース ツリーがインストールされている必要があります。

関連情報