修补文件(在本例中为 dwm)和失败的大块头

n0p*_*0pe 4 diff patch dwm

我正在尝试将transparency补丁添加到dwm. 我下载了.diff文件并在我的 dwm 目录中运行了这个:

max@linux-vwzy:~/misc/dwm/dwm-5.9> patch < dwm-transparency.diff 
patching file config.def.h
patching file dwm.c
Hunk #1 FAILED at 58.
Hunk #5 succeeded at 306 (offset 1 line).
Hunk #6 succeeded at 847 (offset 27 lines).
Hunk #7 succeeded at 882 (offset 27 lines).
Hunk #8 FAILED at 1125.
Hunk #9 succeeded at 1558 with fuzz 1 (offset 2 lines).
2 out of 9 hunks FAILED -- saving rejects to file dwm.c.rej
Run Code Online (Sandbox Code Playgroud)

我之前打过补丁dwm以添加其他几个补丁。它们有可能发生冲突吗?或者这是另一个错误?

jas*_*yan 5

补丁失败是因为您之前应用的其他补丁已经充分改变了代码以阻止补丁应用更改的尝试,即使有偏移(从那些确实成功的大块头中可以看出)。

如果你打开dwm.c.rej你会看到失败的帅哥,那么只需手动将它们修补到dwm.c.

对于每个失败的大块,搜索dwm.c原始代码(以-in开头的行dwm.c.rej)并将它们替换为修补后的代码(以 a 开头的行+)。如果 dwm 重新编译没有错误,则您已成功修补透明。