关于keil中勾选微库"Use MicroLIB"调试printf时编译报错问题
问题描述
在keil中勾选"Use MicroLIB"去调试printf时,发现编译失败,并有两个报错
报错内容:
.\Objects\01_USART_Printf.axf: Error: L6218E: Undefined symbol __use_two_region_memory (referred from startup_gd32e23x.o).
.\Objects\01_USART_Printf.axf: Error: L6218E: Undefined symbol __initial_sp (referred from entry2.o).
解决办法
去工程中打开启动文件startup_gd32e23x.s
,找到user Initial Stack & Heap
下面
先把__initial_sp
和__use_two_region_memory
注释掉
编译一下,然后再取消注释
再编译一下,发现就没有报错了
最后
一个很奇怪的问题,解决办法学习于的大佬文章:勾选Use Microlib报错,解决编译出现Undefined symbol __use_two_region_memory 和Undefined symbol __initial_sp的问题
本文来自博客园,作者:晚风也温柔,转载请注明原文链接:https://www.cnblogs.com/zxr-blog/p/18176322