.debが別のシステムにインストールされたときに自動的にコンパイルおよびインストールされるソースコードから.debパッケージを作成する方法

.debが別のシステムにインストールされたときに自動的にコンパイルおよびインストールされるソースコードから.debパッケージを作成する方法

ソースコードがあり、.debパッケージを作成する必要があります。インストールしたら、ソースコードをコンパイルし、debパッケージをインストールするときに結果のバイナリをインストールします。

すでにバイナリがあるときにパッケージが生成されることを知っています。

ただ抽象的だと思いました。 PRE_INSTALLスクリプトの生成に関連していますか?このスクリプトはソースコードをコンパイルしてバイナリを提供します。後でインストールされます。

答え1

これはパッケージを「すべての」アーキテクチャとして指定し、プレインストールではなくインストール後およびアンインストール前のスクリプトを使用して実行できます。 しかし、これは非常に悪い考えです。 これにより、.debファイルの元の意図の多くが破棄されます。

.debファイルは、コンパイラ(gcc?)とライブラリ自体だけでなく、コードが依存するすべてのライブラリの開発パッケージに依存している必要があります。

コードをコンパイルしてバイナリを正しい場所に配置するには、インストール後にスクリプトを作成する必要があります。パッケージをアンインストールすると、インストールされているすべてのバイナリを削除するアンインストール前のスクリプトを生成する必要があります。

その後も、dpkgインストーラには、すべてのバイナリがどこにあるかを正しく知らせないパッケージが残ります。パッケージと他のパッケージとの競合を検出できません。

これは非常に悪い考えなので、しないことを強くお勧めします。

関連情報