1、 文档目标
解决 编译时报错 Error: L6218E: Undefined symbol main (referred from _rtentry2.o);
2、 问题场景
在 MDK 进行项目编译的时报错
.ObjectsSTM32F476_LED.axf: Error: L6218E: Undefined symbol main (referred from __rtentry2.o).
3、软硬件环境
1 软件版本:Keil MDK 5.38a
2 电脑环境:Window 10
4、解决方法
1 出现以下问题。
.ObjectsSTM32F476_LED.axf: Error: L6218E: Undefined symbol main (referred from __rtentry2.o).
或者
.ObjectsSTM32F476_LED.axf:Error: L6218E: Undefined symbol main (referred from entry9a.o)
2 显然,main()函数在您的项目中没有找到。
有可能的错误是:
1)main 拼写错误;因为打字过快将“main”错打成了“mian”,造成了错误。
Error: L6218E: Undefined symbol main (referred from rtentry2.o). - Keil forum - Support forums - Arm Community
2)还有可能是没有添加main文件,有可能 main.c 文件和其他文件不在一个文件夹下添加时有遗漏;
3)启动文件不符合编译器要求,找不到 main 函数。
3 通过以上步骤可以正常编译了。