编译在linking阶段提示HAL库中没有这个函数,根据头文件跟踪过去,函数是存在的,而且头文件也正常包含了的,这是怎么回事?第一次用RTT还不知道怎么处理这些问题
查看更多
出现这种情况,可以这样检查:
在 stm32f4xx_hal_conf.h 中检查 HAL_SDRAM_MODULE_ENABLED 是否取消了注释。
stm32f4xx_hal_conf.h
HAL_SDRAM_MODULE_ENABLED
如图所示,在导航器中查看对应的文件,这个文件如果打了一个斜线,表示这个文件没有参与到构建。
如果没有导航器,可以在 窗口 -> 显示视图 -> 导航器 来调出这个选项
有头文件,没 fmc 的 hal 库 c源码文件?
出现这个 undefined referenced to xxx错误的根本原因就是链接的过程中,找不到这个xxx函数的实现代码如果这个xxx函数有源码的,那么先看下这个源码文件是否有被编译;一个很简单的验证方法,在这个c文件随便添加一些字符,看下编译这个c文件会不会报错;如果这个xxx函数是没有源码的,是在library库中的,那么就要看下链接的时候有没有添加这个库。以上方法,希望能解决你的问题。
回到 顶部
发布 问题
分享 好友
手机 浏览
投诉 建议
回到 底部
确实是没有参与构建。在cubemx下面的SConscript脚本中添加了这个库文件后就正常了。非常感谢。