KeilC51不编译未调用的函数
在用 Keil C51 做开发时,难免会增删功能,出现定义了的函数未调用的情况。编译时会发出“UNCALLED SEGMENT,IGNORED FOR OVERLAY PROCESS”的警告,还会浪费程序存储空间。
有一个办法,可以不用手动去删除,也不会将这部分代码编译链接进最终的程序。方法如下:
第一步:打开 Options 窗口的 Device 选项卡,勾选“Use Extended Linker (LX51) instead of BL51”。如下图:
第二步:打开 LX51 Misc 选项卡,在 Misc controls 栏输入 REMOVEUSED。如下图:
最后放一个对比效果,设置后比设置前小了1K多。
设置前:
设置后: