Delphi文档说明了这一点 “调试信息[...]它不会影响可执行程序的大小或速度。”
但是,当我激活Debug信息时(在Project Options - > Linker中),我的EXE从1.8MB变为7MB。 我做错了什么?
注意:我认为'链接'下的'调试信息'与'编译'下的'调试信息'相同,因为它们具有相同的编译器指令({$ D})。
答案 0 :(得分:15)
您的假设不正确。使用调试信息进行编译意味着编译器生成带有调试信息的DCU。链接调试信息意味着链接器将调试信息从DCU放入最终二进制文件而不是将其剥离,所以当然这会使二进制文件更大。
没有调试信息的链接通常是正常的,因为调试器可以获取DCU中的调试信息,只要它可以找到它们。但是,如果您需要在某些DCU无法使用的情况下调试您的应用,您需要启用链接选项。
答案 1 :(得分:4)
添加调试信息不会影响代码大小(生成的代码与打开或关闭选项相同,其他选项控制代码生成),但会影响文件< / strong>尺寸。