是否可以使用ActivePerl在Windows上使用-DDEBUGGER选项编译perl?

是否可以使用ActivePerl在Windows上使用-DDEBUGGER选项编译perl?,perl,memory,debugging,compilation,Perl,Memory,Debugging,Compilation,有许多调试选项可用,但它说您需要使用 -迪布格选项。我们如何使用ActivePerl在Windows上实现这一点 此外,我还遇到了Perl内存不足的问题。我正在读一个有5行的XML文件,但是第二行太大了(文件大小为4.3Mb),有5行。 它不分析第二行,并且无法打印该行: print $_ if /match/ ; #match does exists fyi 那么我如何解析第二行呢?您确定您的ActivePerl二进制文件还没有使用调试支持进行编译吗?我知道ActiveState提供了一个图

有许多调试选项可用,但它说您需要使用 -迪布格选项。我们如何使用ActivePerl在Windows上实现这一点

此外,我还遇到了Perl内存不足的问题。我正在读一个有5行的XML文件,但是第二行太大了(文件大小为4.3Mb),有5行。 它不分析第二行,并且无法打印该行:

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

那么我如何解析第二行呢?

您确定您的ActivePerl二进制文件还没有使用调试支持进行编译吗?我知道ActiveState提供了一个图形调试器,其功能与本机Perl调试器几乎相同,因此我假设它们的二进制文件已经通过调试支持编译

你的第二个问题实际上与第一个问题无关,你可能应该把它作为一个单独的问题发布。但尝试一个答案:我怀疑它是否“太大”而无法解析,因为您仅受系统内存的限制,而按照现代标准,4.3Mb并没有那么大,即使您的正则表达式相当复杂(看起来并不是这样)。你确定你要匹配的模式真的包含在那一行中吗


我有点不知所措,因为我不明白根据简单的正则表达式匹配从文件中打印一行数兆字节的代码的意义,尤其是当整个文件只有5行时。您到底想实现什么?

ActiveState将其源代码贡献回主要的Perl源代码,因此您可以自己编译它。您只需使用ActiveState使用的编译器即可。您应该能够从命令窗口看到运行
perl-V
所使用的所有编译选项ActiveState


但是,您可能不必这样做。如果你告诉我们你想要完成什么,我们可能会给你一个更好的答案

-DDEBUGGING是额外的调试内容,而不仅仅是您从正常的-d中获得的内容。好的方面,我仍然不清楚是否在编译标准ActiveState二进制文件时启用了该选项。请运行perl-v以了解存在哪些选项。您应该将其分为几个单独的问题。您需要-DDEBUGGER的原因是什么?我不想粗鲁,但通常我不希望有人需要它,如果他们不知道如何编译Perl。你从中得到的额外信息是相当低级和详细的。