web-dev-qa-db-ja.com

Debianパッケージに依存関係をインストールさせる方法は?

Qt4 libsに依存するシンプルなツールをインストールするためのシンプルなDebianパッケージを作成したいと思います。

制御ファイルでは、Qt4 libsに依存することを定義しましたが、パッケージをテストしているときには、依存関係を満たすことができなかったと表示されています。

質問:

Debianトリガーに依存関係をインストールするようにするにはどうすればよいですか?

ドキュメントを見つけることができませんが、apt-getがそれを行うことを知っています。

13
Nuno Santos

ローカルのAPTリポジトリの作成を避けたい場合は、次のようにできます:

dpkg -i mypackage.deb
apt-get install --fix-missing

ローカルリポジトリを作成する場合は、 reprepro を使用できます。

20
Thomas Leonard

dpkgを介してインストールした場合、dkpgは追加の依存関係の場所がわからないため、機能しません。独自のリポジトリを構築すれば、apt-getを使用してそれを行うこともできますが、初めての場合は時間がかかります(学習するのに少し時間がかかるので、最初は「新しい」だけです)。

一方、おそらくあなたが探している解決策はgdebiです(それをインストールする必要があるかもしれません:apt-get install gdebi-core)。これは、パッケージの依存関係をチェックし、apt-getを呼び出してそれらをフェッチしてインストールし、次にdpkgを呼び出してパッケージをインストールするツールです。

14

@ textshellこの答え ごと:

apt 1.1以降(Xenial(16.04)、stretchで利用可能)apt installでは、ローカルファイルも使用できます。

Sudo apt install ./foo-1.2.3.deb

とてもシンプルでクリーンです。

リリースのお知らせ を参照してください

これにより、通常のapt installまたはapt-get installと同様に、依存関係もインストールされます。

6
sampablokuper

Debianパッケージを作成する場合は、その依存関係をdebian/ディレクトリ制御ファイルで指定します。 debian/controlはその目的でDepends:ディレクティブを受け取ると思います。

私自身も詳細はあまりわかりませんが、 http://www.debian.org/doc/manuals/maint-guide/ に説明があります。特に http://www.debian.org/doc/manuals/maint-guide/dreq.en.html#control は、探し始めるのに適切な場所のようです。

6
BRPocock

1つの方法は、コンピューターにローカルパッケージリポジトリを作成し、それを/etc/apt/sources.listに追加することです。次に、apt-getを使用してローカルリポジトリからパッケージをインストールし、依存関係を自動的に解決できます。

おそらくもっと簡単な方法がありますが、それがどうなるかわかりません。

2
Jonathan