将STM32固件库编译为一个.A文件,然后与其它的文件一起无法生成最后的ELF文件。如下 arm-none-eabi-g++ -Tstm32_rom.ld -L. -mcpu= ... -Wall -o test.bin.elf main.o dprint.o ../STM32Library/objs/libstm32f10x.a 出错提示:arm-none-eabi/bin/ld.exe: warning: cannot find entry symbol Reset_Handler; defaulting to 08000000 如果把这个libstm32f10x.a 反解压为很多.o文件,再进行编译则可以完全正常。 何解? 有哪位碰到过这个问题? |
2.在写需要链接的*.o文件的时候,顺序很重要。具体谁在前,我也忘记了,你查查吧。
感觉应该是链接文件中没有Reset_Handler!
Reset_Handle一定 是有的,否则将.A文件解开成.o文件也不会连接成功啊。如果把startup_stm32f103.o文件给拿出来,进行联接就没有问题了。 不清楚.o文件与.a文件的连接有什么不同。