web-dev-qa-db-ja.com

依存関係のあるパッケージをPPAにアップロードする方法は?

PPA用のパッケージを作成してアップロードしました。問題なく構築されました。

次に、最初のパッケージに依存する別のパッケージを作成してアップロードしました。最初のパッケージにファイルが見つからなかったため、失敗しました。これは、最初のパッケージがインストールされていなかったと信じさせてくれます。

2番目のパッケージをビルドする前に、最初のパッケージがインストールされていることを確認するにはどうすればよいですか?

最初のパッケージの制御ファイル(libjsoncpp):

出典:jsoncpp 
優先度:追加
メンテナンス:ネイサン・オスマン
ビルド依存:debhelper(> = 7)
標準バージョン:3.8 .3 
セクション:libs 
ホームページ:http://jsoncpp.sf.net 
 
パッケージ:jsoncpp-dev 
セクション:libdevel 
アーキテクチャ:any 
 Depends:libjsoncpp(= $ {binary:Version})
説明:C++のJSON解析ライブラリ
 jsoncppは簡単にできるC++ライブラリです。 to 
 JSONデータの読み取り/書き込み。
。
このパッケージには、jsoncpp。
 [.____を使用するアプリケーションの作成に必要な開発ツールが含まれています
 。]パッケージ:libjsoncpp 
セクション:libs 
アーキテクチャ:any 
 Depends:$ {shlibs:Depends}、$ {misc:Depends} 
 Description:JSON解析C++用ライブラリ
 jsoncppは、JSONデータの読み取り/書き込みを簡単に
できるC++ライブラリです。

2番目の制御ファイル(libsopp):

出典:sopp 
優先度:追加
保守担当者:Nathan Osman 
ビルド依存:debhelper(> = 7)
標準バージョン:3.8 .3 
セクション:libs 
ホームページ:http://stackoverflow.quickmediasolutions.com 
 
パッケージ:sopp-dev 
セクション:libdevel 
アーキテクチャ:any 
 Depends:libsopp(= $ {binary:Version})、jsoncpp-dev 
説明:StackExchangeサイトとのインターフェース用のC++ライブラリ。
 so ++ StackOverflow 
 APIの機能をラップするC++ライブラリです。すべてのStackExchangeサイトへのアクセスを提供します。
。
このパッケージには、so ++。
 
を使用するソフトウェア
の作成に必要な開発ファイルが含まれています。パッケージ:libsopp 
セクション:libs 
アーキテクチャ:any 
 Depends:$ {shlibs:Depends}、$ {misc:Depends}、libjsoncpp 
説明:C++ StackExchangeサイトとインターフェイスするためのライブラリ。
 so ++は、StackOverflow 
 APIの機能をラップするC++ライブラリです。すべてのStackExchangeサイトへのアクセスを提供します。
13
Nathan Osman

2番目のパッケージ(sopp)は、最初のbuild;が必要であることを指定する必要があります。指定した依存関係(Depends:)はインストールのみを処理します。

ビルドの依存関係を追加するには、これを上部に追加します(Source:)制御ファイルのセクション:

ビルド依存:jsoncpp-dev

その後、Depends行からjsoncppをshlibs:Dependsマクロはそれ自体で動作するはずです。

10
Jeremy Kerr