2009-04-20 10 views
2

cygwinのgawkを使用するawkスクリプトがあります。今はcygwinがインストールされていないが、Perlを持っている同僚にこれらのスクリプトを渡す必要があります。私はちょうどcygwinの中に含まれているA2Pを使用することができます願っていたが、それは次のようなエラーで失敗します。どのようにしてPerlのa2pサポートを有効にできますか?

Undefined subroutine &main::gensub called at ./t.pl line 18, <> line 1. 

私はこれらのメソッドを実装し、既存のPerlのライブラリ/モジュールがあります期待しています。すべてのポインタ?

答えて

5

gensub()の機能は、a2pではサポートされていません。コードを変更してgsub()を使用する場合は、コンパイルする必要があります。

またはgensub()の機能をシミュレートするために、変換されたPerlプログラムの最後にgensub()サブルーチンを追加することもできます。

しかし、a2pによって生成されたPerlコードはあまり保守的ではありませんので、最後の手段としてのみ使用します。

gawkプログラムが他のcygwin/unixユーティリティを呼び出さない場合は、プログラムと一緒にWindows gawk実行ファイルを同僚に配布するほうがよいでしょう。

+0

ご回答いただきありがとうございます。私はまた、a2pを使って少しのperlを学ぶことを試みていました。あなたの応答が役立ちます。 –

関連する問題