今では多くの人が知っているように、私はパッケージを構築しています:)
PPAにアップロードできるように、完成に近づいていますが、まだ1つの小さな問題があります。それは、共有ライブラリ(.soファイル)がパッケージに入れたくないということです。
さて、これが私の制御ファイルにあるものです:
ソース:jsoncpp 優先度:extra メンテナ:****** ビルド依存:debhelper(> = 7) 標準-バージョン:3.8.3 セクション:libs ホームページ:http://jsoncpp.sf.net パッケージ:jsoncpp-dev セクション:libdevel アーキテクチャ:any 依存:jsoncpp0(= $ {binary:Version}) 説明:C++ のJSON解析ライブラリjsoncppはC++ライブラリですこれにより、 JSONデータの読み取り/書き込みが簡単になります。 。 このパッケージには、jsoncpp。[.____を使用するアプリケーションを作成するために必要な 開発ツールが含まれています。 ] パッケージ:jsoncpp0 セクション:libs アーキテクチャ:任意 依存:$ {shlibs:Depends}、$ {misc:Depends} 説明:C++ 用のJSON解析ライブラリjsoncppは、JSONデータの読み取り/書き込みを簡単に できるC++ライブラリです。
これで、jsoncpp-devは正常にビルドされ、開発ファイルはパッケージに表示されますが、共有ライブラリはパッケージに表示されません。
これがjsoncpp0.dirs
は次のようになります:
usr/lib
...そしてjsoncpp-dev.dirs
:
usr/lib usr/include
更新されたMakefileは ここ です。
さらに詳しい情報が必要な場合はお知らせください。
これは私の側のかなり悪い間違いの結果でした。どういうわけかjsoncpp0.install
はjsoncpp0install
に名前が変更されました(ピリオドなし)。
とにかく、それは今動作します。
Jsoncppが使用するビルドシステム(scons)を本当に使用したいのは、おそらくパッケージに合わせて調整されているからです。まず、使用しているパッケージ名の前にlibjsoncpp0などのlibを付ける必要があります(結果のファイルが/usr/lib/libjsoncpp.so.0であると想定)。ファイルをインストールするには、これらのファイルをにリストする必要があります。 .installファイル(例:debian/libjsoncpp0.install)には、適切なファイルをインストールするための/usr/lib/lib*.so.*があります。 libjsoncpp-devのファイルは、/ usr/include/*および/usr/lib/lib*.soにあります。
http://www.netfort.gr.jp/~dancer/column/libpkg-guide/libpkg-guide.html のライブラリパッケージガイドは複雑になる可能性がありますが、ライブラリをパッケージ化して、DebianとUbuntuにうまく統合できるようにする正しい方法。
また、irc.ubuntu.comの#ubuntu-motuまたは#ubuntu-packagingで、質問に答えてくれる人がよくいます。