1

利用可能な多くのデバッグ オプションがありますが、Perl を -DDEBUGGER オプションでコンパイルする必要があると書かれています。Windows で ActivePerl を使用してこれを行うにはどうすればよいでしょうか。

また、Perl でメモリ不足の問題が発生しました。5 行の XML ファイルを読み込んでいましたが、2 行目が 5 行では大きすぎました (ファイル サイズは 4.3Mb)。この 2 行目は解析されず、行の出力に失敗します。

print $_ if /match/ ; #match does exists fyi

この2行目を解析するにはどうすればよいですか?

4

2 に答える 2

1

ActiveState は、そのソースをメインの Perl ソース コードに戻すため、必要に応じて自分でコンパイルできます。ActiveState が使用するのと同じコンパイラを使用する必要があるだけです。perl -Vコマンド ウィンドウから実行することで使用されるすべてのコンパイル オプション ActiveState を確認できるはずです。

ただし、これを行う必要がない場合もあります。何を達成しようとしているのかを教えていただければ、より適切な回答ができるかもしれません。:)

于 2008-12-30T18:31:10.507 に答える
1

ActivePerl バイナリがまだデバッグ サポート付きでコンパイルされていないことを確認しますか? ActiveState がネイティブの Perl デバッガーとほとんど同じ機能を備えたグラフィカル デバッガーを提供していることは知っているので、それらのバイナリーは既にデバッグ サポート付きでコンパイルされていると想定していました。

2 番目の質問は最初の質問とは関係ありません。別の質問として投稿する必要があります。しかし、答えを試すには:システムのメモリによってのみ制限され、4.3Mbは現代の標準ではそれほど大きくないため、解析するには「大きすぎる」とは思いません。あるようです)。一致させようとしているパターンが本当にその行に含まれていると確信していますか?

単純な正規表現の一致に基づいてファイルから数メガバイトの単一行を出力するポイントを理解していないため、少し迷っています。ファイル全体に 5 行しかない場合。正確に何を達成しようとしていますか?

于 2008-12-30T16:08:14.213 に答える