dポイントプレゼントキャンペーン実施中!

OS RHEL5の環境です。

SRPMに対象パッチを含めてRPMにしようとしています。

RPM変換時、またpatchコマンドにて対象ファイルにパッチをあてると、

Hunk #1 FAILED at 76.
Hunk #2 FAILED at 123.
Hunk #3 FAILED at 149.
Hunk #4 FAILED at 204.
Hunk #5 FAILED at 238.
Hunk #6 succeeded at 324 with fuzz 1 (offset 40 lines).

のようにでますが、どういう意味でしょうか。

一行目であれば、適用先のファイルもしくはパッチファイルの76行目の修正が必要ということでしょうか。

よろしくお願いします。

A 回答 (2件)

パッチそのものを見たことありますか?


正体はテキストファイルで、diffの出力です。

> Hunk #1 FAILED at 76.

「適用先の76行目(付近)を変更しようとしたけれど、patchに書いてある文字列と違ってて、どこ変えていいかわからないので、変更できなかった」

> Hunk #6 succeeded at 324 with fuzz 1 (offset 40 lines).

「該当する文字列が見付かったので変更したけど、patchに書いてある行とちがってた(40行ほど)」
ということです。

こういう場合、元のファイルのコピーが
~.orig
パッチに失敗した部分が
~.rej
と言う名前で作られるので、内容を確認できます。熟練者なら、その内容から手動で変更することもできます。


ただ、これ、違いすぎませんか?
そのパッチと、ソースのバージョンは一致していますか?
    • good
    • 0
この回答へのお礼

ご回答いただき、ありがとうございます。

参考にいろいろ調べましたが、他のpatchファイルが先にソースを書き換えたためうまく適用できないようでした。
先にこのファイルのみをソースに対してpatchコマンドで適用するとうまくいきました。が、他のパッチとあわせて適用できるよう修正の必要がありそうです。

お礼日時:2012/04/16 22:28

「パッチに『最初の部分は 76行目から当ててね』って書いてあるんだけど, 適用しようと思ったらそこは全然違うからあきらめた」


だったかなぁ.
    • good
    • 0
この回答へのお礼

ご回答いただき、ありがとうございます。

参考になりました。

お礼日時:2012/04/16 22:27

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!