解决 ChibiOS 3.x 中 undefined symbol __main_stack_size__
问题:
尝试编译 ChibiOS 3.x 时,你在链接阶段收到以下错误消息之一:
undefined_stack_symbols.txt
undefined symbol `__main_stack_size__' referenced in expression
undefined symbol `__process_stack_size__' referenced in expression解决方案
与 ChibiOS 2.x 相比,ChibiOS 3.x 链接器脚本不包含堆栈大小定义。如果你使用自定义构建系统,你需要添加这些链接器标志,例如通过设置 LDFLAGS 环境变量:
set_ldflags.sh
-Wl,--defsym=__process_stack_size__=0x400 -Wl,--defsym=__main_stack_size__=0x400值 0x400 (1024) 是撰写本文时 ChibiOS 中的默认 makefile 值。如果需要,你也可以使用自定义适当值。这很可能就是 ChibiOS 3.x 首先选择基于外部定义链接器变量的方法的原因。
If this post helped you, please consider buying me a coffee or donating via PayPal to support research & publishing of new posts on TechOverflow