- Keil5在创建STM32工程文件后编译报错:
Error: L6218E: Undefined symbol Image$$ARM_LIB_STACK$$ZI$$Limit (referred from startup_armcm4.o).
- 此处考虑到是链接问题,首先点击“魔术棒” → 在“Target”标签下 → 勾选“Use MicroLIB” → 点击”OK“,重新编译。
- 此时工程报错:
Error: L6218E: Undefined symbol __initial_sp (referred from entry2.o).
即未定义初始化栈顶指针;
- 此处其实是startup文件链接出现问题,即ARMCM4_ac6.sct文件没有链接到工程中;
- 点击“魔术棒” → 在“Linker”标签下的“Linker control string”栏出可以看到,链接的sct文件并非"ARMCM4_ac6.sct",需要进行修改;
- 取消勾选“Use Memory Layout from Target Dialog” → 在“Scatter File”文件栏下拉选择"ARMCM4_ac6.sct"文件,若没有,则点击“..."按钮,按照路径“.\RTE\Device\ARMCM4\ARMCM4_ac6.sct”找到文件即可;
文章来源:https://www.toymoban.com/news/detail-855092.html
- 保存并编译文件即可通过:
文章来源地址https://www.toymoban.com/news/detail-855092.html
到了这里,关于Keil5报错:Error: L6218E: Undefined symbol Image$$ARM_LIB_STACK$$ZI$$Limit的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!