CFLAGS += -ffunction-sections -fdata-sections LDFLAGS += -Wl,-Map=object.map,--cref,--gc-section
if found overlap error, add one line in Link script:
.text{
*(.text.*) }
通过增加CFLAGS选项,使得各个函数放到单独的section内,在链接的时候会自动去掉没有使用的函数。从而达到减小可执行文件大小的目的。
-Wl,-Map=object.map:输出一个可执行文件的map文件,可以查看各个函数所在的内存地址。
注意:使用该选项后,全局变量不会自动设为0。