使用DDEBUGGING编译Perl时速度是否较慢?

ujv3wf0j  于 2022-11-15  发布在  Perl
关注(0)|答案(1)|浏览(161)

根据Supercharging Perl - Daina Pettit的这张幻灯片,

上面写着:
避免使用使用线程编译的perl版本或DDEBUGGING,除非您知道您需要它们。
我知道大多数发行版使用线程编译Perl,但是我在Debian上的Perl(如使用perl -V所观察到的)是使用-DDEBUGGING=-g编译的,这会减慢它吗?

nlejzf6q

nlejzf6q1#

启用调试的Perl速度较慢。
请注意,使用-DDEBUGGING构建的perl将比标准perl大得多,运行速度也慢得多。
但是,-DDEBUGGING=-g不启用调试:
为了方便起见,调试代码(-DDEBUGGING)和调试符号(-g)可以使用Configure开关联合或单独启用,也可以(有点令人困惑)。对于一个更吸引人的调用,-DEBUGGING被定义为-DDEBUGGING的别名。对于这两个调用,还支持-U调用,以便能够否决提示或Policy.sh设置。
also documented
配置-DEBUGGING=-g

添加-g进行优化,但不设置-DDEBUGGING(注意:您的系统实际上可能需要类似cc -g2的内容。请查看手册页中的cc(1)以及系统的任何提示文件。)

您可以使用以下工具测试状态:perl -D,如果您看到以下内容,则表示您没有-DDEBUGGING
使用-DDEBUGGING重新编译perl以使用-D开关(您的意思是-d吗?)

相关问题