このパッチを適用する方法

このパッチを適用する方法

一部のシステムで発生するセグメントエラーを修正するperlモジュールnet :: ssh2のパッチ修正があります。

場所は次のとおりです。 https://rt.cpan.org/Public/Bug/Display.html?id=36614

パッチをダウンロードしましたが、どのように適用するのかわかりません。以前にインストールしたモジュールを削除し、ビルドフォルダに移動して実行しました。

パッチ ssh2.xs < p1

パッチが反転したかどうか尋ねた。よくわからないので「はい」を押しました。 ITはパッチが成功したと言い、その後は正常だと言いました。モジュールを取り付けます。パッチが機能しないような、またはパッチが適用されたバージョンを正しく移動しています。まだセグフォルトが発生し、誰もがこれが問題を解決すると言うので、このような感じがします。

答え1

正しいパッチ呼び出しは次のとおりです。

patch -p1 < net-ssh2-0.18-perl5.10.patch

SSH2.xsファイルと同じディレクトリでこれを実行しました。

答え2

Gnuパッチのマニュアルページから直接抜粋:

   -p<num>  or  --strip=num
      Strip the smallest prefix containing num leading slashes from each file name found in the patch file.  A sequence of  one  or  more  adjacent
      slashes  is  counted  as  a single slash.  This controls how file names found in the patch file are treated, in case you keep your files in a
      different directory than the person who sent out the patch.  For example, supposing the file name in the patch file was

         /u/howard/src/blurfl/blurfl.c

      setting -p0 gives the entire file name unmodified, -p1 gives

         u/howard/src/blurfl/blurfl.c

      without the leading slash, -p4 gives

         blurfl/blurfl.c

      and not specifying -p at all just gives you blurfl.c.  Whatever you end up with is looked for either in the current directory, or the  direc-
      tory specified by the -d option.

関連情報