
私はluajit
Debian sidからソースコードパッケージをインポートしました。apt source luajit
同じコマンドを使用してパッケージを解凍すると、次のメッセージが表示されました。
dpkg-source: info: applying 0002-Enable-debugging-symbols-in-the-build.patch
パッチが自動的に適用されるように要求するわけではありませんが、このパッチの機能を確認してから元に戻したいと思います。
ソースパッケージが解凍されたディレクトリでは、コマンドwhat-patch
応答はですquilt
。まず、これを行った後、sidにquilt(v0.66)をインストールしてから、次のようにcd ./debian/patches
しました。
quilt diff -P ./0002-Enable-debugging-symbols-in-the-build.patch
しかし、アップストリームコードでパッチが実行する必要があることをより明確に理解したQuiltは、次のように奇妙に反応しました。
Patch ./0002-Enable-debugging-symbols-in-the-build.patch is not in series
./series
だからファイルを見てみると、cat ./series
次の行がはっきりと示されています。
0002-Enable-debugging-symbols-in-the-build.patch
記載されている他のパッチは7つです(以前は1つ、その後は6つ)。それでは、何が欠けていますか?私は行ってman quilt
コマンドを読み、diff
次のように言いました。
指定されたパッチの最上位または指定されたファイルの違いを生成します。ファイルを指定しないと、変更されたすべてのファイルが含まれます。
そして、この-P
スイッチは次のことができます。
指定されたパッチの違いを作成します。 (デフォルトはトップパッチです。)
私は以前このようなことをしたことがなく、マンページ+ Debian Wikiのチュートリアルでこれよりも少し進んだので、キルトにどんな問題があるのか分からないようです。
答え1
コマンドの最後にquilt diff
'sとtheが少し混乱していることがわかりました。-P
明らかに、パッチファイル名の前のプレフィックスは、使用時にキルトの解像度を壊したり、単に必要としません。したがって、正しい構文は次のとおりです。[file ...]
quilt diff
./
./series
-P
-P
./
quilt diff -P ./0002-Enable-debugging-symbols-in-the-build.patch
例:
quilt diff -P 0002-Enable-debugging-symbols-in-the-build.patch
これで予想される違いが表示されます。