質問: ライブラリパッケージの作成に関する問題 共有ライブラリのパッケージを作成するのに問題があります。dh_makeを実行し、ファイルを編集しました。ただし、パッケージをビルドすると、次の結果が得られます。 ****** @ ******-laptop:〜/ documents/temp/jsoncpp/jsoncpp-0.5.0 $ debuild dpkg-buildpackage -rfakeroot -d -us -uc dpkg-buildpackage:cflagsをデフォルト値に設定:-g -o2 dpkg-buildpackage:cppflagsをデフォルト値に設定: dpkg-buildpackage:ldflagsをデフォルト値に設定:-wl、-bsymbolic-functions dpkg-buildpackage:fflagsをデフォルト値に設定:-g -o2 dpkg-buildpackage:cxxflagsをデフォルト値に設定:-g -o2 dpkg-buildpackage:ソースパッケージjsoncpp dpkg-buildpackage:ソースバージョン0.5.0-1 dpkg-buildpackage:ソースは****** dpkg-buildpackageによって変更されました:ホストアーキテクチャamd64 fakeroot debian/rules clean dh clean dh_testdir dh_auto_clean dh_clean dpkg-source -b jsoncpp -0.5.0 dpkg-source:info:ソースフォーマット「1.0」を使用 dpkg-source:info:既存のjsoncpp_0.5.0.orig.tar.gz を使用してjsoncppを構築dpkg-source:info:jsoncpp_0.5でjsoncppを構築しています。 0-1.diff.gz dpkg-source:情報:jsoncpp_0.5.0-1.dsc でjsoncppを構築するdebian/rules build dh build dh_testdir dh_auto_configure dh_auto_build make [1]:ディレクトリ `/home/******/documents/temp/jsoncpp/jsoncpp-0.5.0'[.____に入る。] test -d obj || mkdir obj g ++ -i ./include -c -o obj/json_reader.o src/lib_json/json_reader.cpp g ++ -i ./include -c -o obj/json_writer.o src /lib_json/json_writer.cpp g++ -i ./include -c -o obj/json_value.o src/lib_json/json_value.cpp ar -r libjsoncpp.a obj/json_reader.o obj /json_writer.o obj/json_value.o ar:libjsoncpp.a make [1]の作成:ディレクトリ `/ home/******/documents/temp/jsoncpp/jsoncppを離れる-0.5.0 ' dh_auto_test fakeroot debian/rules binary dh binary dh_testroot dh_prep dh_installdirs dh_auto_install make [1]:ディレクトリ `/home/******/documents/temp/jsoncpp/jsoncpp-0.5.0' sudo cp -r include/jsonに入る- -target-directory =/usr/include エラー:ld.so:ld_preloadのオブジェクト 'libfakeroot-sysv.so'をプリロードできません:無視されます。 cp libjsoncpp.a/usr/lib/libjsoncpp.a cp:通常のファイル `/usr/lib/libjsoncpp.a 'を作成できません:許可が拒否されました make [1]:*** [i nstall]エラー1 make [1]:ディレクトリ `/home/******/documents/temp/jsoncpp/jsoncpp-0.5.0' dh_auto_installを終了:make -j1 install destdir =/home/******/documents/temp/jsoncpp/jsoncpp-0.5.0/debian/tmpが終了コード2 makeを返しました:*** [バイナリ]エラー29 dpkg-buildpackage:エラー:fakeroot debian/rulesバイナリはエラー終了ステータス2 debuildを与えました:1340行で致命的なエラー: dpkg-buildpackage -rfakeroot -d -us -uc failed 問題はここにあるようです: エラー:ld.so:ld_preloadのオブジェクト 'libfakeroot-sysv.so'をプリロードできません:無視されました。 cp libjsoncpp.a /usr/lib/libjsoncpp.a cp:通常のファイル `/usr/lib/libjsoncpp.a 'を作成できません:許可が拒否されました ...しかし、私は問題が何であるか微妙な考えを持っていません。必要に応じて、メイクファイルは here です。
回答: 問題を理解したように、ここにあります:cp libjsoncpp.a /usr/lib/libjsoncpp.a debbuildを通常のユーザーとして呼び出していますが、そのユーザーはそのディレクトリに書き込む権限がありません。 sudo debbuildを試せばうまくいくはずです。