パッケージをビルドするときにdpkg-sourceソースの問題を解決する方法は?


16

ここで誰かがDebian / Ubuntuパッケージを作成した経験がありますか?Ubuntu 12.10(Quantal)からUbuntu 12.04にlammpsパッケージ(http://packages.ubuntu.com/quantal/lammps)をバックポートしようとしています

非公式に必要なのは、IaaSプラットフォームへの展開用のカスタム仮想マシンイメージを作成するときに便利なため、.debパッケージだけです。

https://wiki.ubuntu.com/PackagingGuideの Ubuntuパッケージングガイドに従って、正常にビルドできますがdebuildコマンドを使用して再ビルドしようとすると、通常このエラーが発生します。

 dpkg-source: error: aborting due to unexpected upstream changes, see
 /tmp/lammps_0~20120615.gite442279-1.diff.aie32n dpkg-source: info: you
 can integrate the local changes with dpkg-source --commit
 dpkg-buildpackage: error: dpkg-source --include-binaries -i -b
 lammps-0~20120615.gite442279 gave error exit status 2

srcディレクトリで「make clean-all」を実行しても、問題は解決しません。ビルドプロセス中に生成されたすべてのファイルを完全に削除する方法、またはソースファイルの違いを無視するようにdebuildに依頼する方法はありますか?

回答:


6

これは、展開されたアップストリームソースに、debian/patches/ディレクトリ内のパッチの一部ではない変更が適用されているseriesか、存在する場合はそこのファイルにリストされていることを意味します。および/またはパッチのキルトの適用状態に何らかの矛盾があります。

/ tmpの上記のファイルを見ると、問題の変更が表示されます。


/ tmp / * diff *ファイル内のすべての変更レコードを元に戻す代わりに、 'make'によって行われた変更を復元する簡単な方法はありますか?
hanxue

29

バイナリをビルドするだけで、Debianの官僚主義を回避できます。 dpkg-buildpackage -b


1
debianにアップロードする場合、これはあまり役に立ちません。
エレミヤ

4
@jeremiahですが、個人使用のためにdebianパッケージを調整する場合に非常に便利です。
Wyatt8740

10

quiltを使用したくない場合は、debian / source / formatの形式を3.0(quilt)から3.0(native)に変更します。とにかくこれで問題は解決しました。


この!キルトは不可能です。
ジェイ_silly_evarlast_レン

1
私はこのコメントをそのまま素朴にフォローしました。最終的な効果は、ビルドがdebian / patchesのパッチを使用しなくなることです。実際にパッチを適用するために必要な魔法をdebian / rulesに追加する方法を説明することで、答えを拡大していただけますか?
トーマスヴァンダースティケーレ


1

この問題は、キルトが作業コピーにパッチを適用したと誤って考えたときに見られました(現在のステータスは.pcフォルダーで確認できます)。その場合の修正は、キルトにすべてのパッチを強制的にポップさせることでしたquilt pop -a -f


0

これは、Debianのすべての「ペーパーワーク」を行ったが、以前の試みからのアーティファクトが残っている場合に発生する可能性があります。特に、「config.sub」、「config.guess」、「Makefile」への自動生成された変更。

これをdebian / source / optionsに置くことができます:

# Don't store changes on autogenerated files
extend-diff-ignore = "(^|/)(config\.sub|config\.guess|Makefile)$"

参照:https : //raphaelhertzog.com/2011/01/28/3-ways-to-not-clutter-your-debian-source-package-with-autogenerated-files/

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.