keil c51不编译未调用函数
在用KEIL C51,经常会遇到定义了的函数未调用,编译时会发出“UNCALLED SEGMENT,IGNORED FOR OVERLAY PROCESS”的警告,我们不想手动去删除,也不想这部分代码被编译和链接进最终的程序,以免浪费有限的储存空间。方法如下:
未设置的情况下:
设置如下
1.把target options中的device页中选上“use Extended Linker(LX51) instead of BL51”.如下图:
2.在LX51 Misc 页中的Misc Control中填入“REMOVEUNUSED”,如下图:
3.重新编译,结果如下图:
与前面未设置之前比较,使用“REMOVEUNUSED”禁止多余部分分配空间后,警告没有并且代码也减少。