web-dev-qa-db-ja.com

ソースをDEBパッケージにコンパイルする

コンパイルされたソフトウェアのインストールと削除に常に問題があったため、ソース/.debパッケージにソフトウェアをビルドして、インストール/削除を簡単にしたいと決めました。

エンドユーザーとして、ソースを.debパッケージにビルドする簡単で短い方法を知りたいです。

私は試しました:

  • bucompilator 、これは私には機能しませんでした
  • これは how to ガイドですが、長すぎます
33
Ashu

checkinstallは、目的の処理を行います。どのファイルがインストールされるかを監視し、それらを.debパッケージに入れます。その後、インストールしてremoved

でインストール

apt-get install checkinstall

次に、ソースから通常のインストールを行い、「Sudo make install」を「Sudo checkinstall」に置き換えます。

  ./configure
  make
  Sudo checkinstall

リファレンス: https://help.ubuntu.com/community/CheckInstall

46
Floyd

新しいパッケージのトピックに関するセクション を持つ本当に良いパッケージングガイドがあります。

9
tumbleweed

make checkinstallコマンドを何度か使用して、1台のマシンに.debパッケージを作成し、他のサーバーにインストールしました。これは、ベータ版をすばやくインストールする方法です。動作しますが、注意して使用する必要があります。 .debパッケージの多くの機能を理解していないユーザーには落とし穴があります。

同じ自家製のアプリを使用する20台のサーバーがあります。各ホストにビルドサポートとコンパイラを追加することはそれほど難しくありません。

新しいバージョンをダウンロードしてコンパイルするコマンドを20回入力すると、時間がかかります。別の方法は、タスクを実行するスクリプトをアップロードしてから、スクリプトを実行することです。ただし、checkinstallで作成された.debファイルを使用してアプリケーションを更新する方が簡単な場合がよくあります。

6
C Schuman

ソフトウェアがランダムに作成された.debにパッケージ化するタスクは、特にmake、make installの場合と比較して、ソフトウェアがまだその形式になっていない場合、かなり複雑です。もっとシンプルにしたいのなら、間違った方向に進んでいると思います。

できないと言っているわけではありません-Debian開発者は多くのことをしています。しかし、それはあなたがしたいことをする最も簡単な方法のようには見えません。

たぶん、ソースからのソフトウェアのコンパイルとインストールがどのように機能するかを学ぶことにもっと集中する必要があります。あなたに有利なのは、自分でインストールしたものはすべて/ usr/localに置かれるべきであるという事実です

1
thomasrutter