又是一个悲伤的教坏孩子的故事:Debug 版本的体积太大,而 Release 版本有时候却有问题,上帝知道问题出在那儿了,反正 我是找不出来了,妈妈,快告诉我怎么办?:)
实际上,Debug 版本本身并不会比 Release 版本大多少,真正大的原因在于内嵌了大量的调试符号信息,这些信息用于告诉调试器,某个地址对应的变量或函数名叫啥,某行代码编译后的机器码位置等等,我们要想减少 Debug 版本的体积,修改这方面的设置就可以了。
所以,解决办法就是:进入 Project > Options > Compiling,将 Debugging 里的 Debug Information 设置为 No Debug Information,Local Symbols 设置为 false,Symbol reference info 设置为 None,Use Debug .dcus 也设置为 false,再编译看看,文件的体积就会变的和 Release 相差无已了。
好吧,把戏很快可能别人拆穿,你会发现 Debug 模式无法调试,设置断点了,这个就是因为我们前面把调试信息移除了造成的。所以,如果想要恢复调试状态,将上面的几个选项恢复原值就好了。
OK,实际上 Debug 和 Release 模式的核心区别就是选项的不同,所以大家对比下,很容易就会找到不同的地方,将其设置一下就好。