【发布时间】:2015-09-18 12:00:04
【问题描述】:
gcc 链接器是否链接存档文件或目标文件(或两者)应该有所不同吗?
背景:
在嵌入式项目中,ISR(当然不会被任何其他源代码引用)作为文件中的唯一函数定位。该文件被编译为目标文件,然后放入存档文件。
其他文件中的其他函数被编译为单独的目标文件。
无论链接器是使用 ISR 目标文件还是 ISR 归档文件,二进制文件的构建都没有任何问题,并且毫无例外地在目标上运行。
但是,如果使用存档文件,则 ISR 是不链接的。
另外,如果在同一个文件中有任何其他引用(例如,某个其他文件中的某个其他函数使用的变量),它是完全链接的。
为什么会这样?
【问题讨论】: