构建STM32CubeIDE工程时出现的问题

../Src/sysmem.c:63:1: error: unknown type name 'caddr_t'

../Src/sysmem.c:76:25: error: 'caddr_t' undeclared (first use in this function)

../Src/sysmem.c:81:25: error: expected ';' before 'prev_heap_end'

make: *** [Src/subdir.mk:43: Src/sysmem.o] Error 1

完整的错误信息如下:

这是在链接阶段出现的错误。提示找不到caddr_t这种类型名。

具体出现这种问题的原因并不清楚,但是有解决方法。

解决方法:

双击错误提示,跳到报错的文件【sysmem.c】

在头文件包含处加上一句【#include <sys/stat.h>】或者【#include <sys/types.h>】即可

因为在【types.h】里定义了【caddr_t】,【typedef char * caddr_t;】,所以【#include <sys/types.h>】可以解决问题

【stat.h】里【#include <sys/types.h>】,所以【#include <sys/stat.h>】也可以解决问题

我查到的一些信息说【caddr_t】是一种非常古老的类型,可能在【void*】被创建出来之前就存在了,似乎【caddr_t】与【void*】的作用是相同的。但是现代代码已经不使用【caddr_t】了。

但是我在【types.h】却里面看到【caddr_t】是用来代替【char*】的,这就有矛盾了。

如果有朋友知道为什么,可以在评论区说说,十分感谢。

  • 4
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
STM32CubeIDE是一款由STMicroelectronics开发的集成开发环境,用于开发基于STM32微控制器的应用程序。它为开发人员提供了一套丰富的工具和功能,使得开发STM32微控制器的过程更加高效和便捷。 STM32CubeIDE中文手册是为了方便非英语用户使用STM32CubeIDE而编写的详细说明文档。该手册详细介绍了STM32CubeIDE的安装和配置步骤,以及各种功能和工具的使用方法。它的中文翻译有助于更多中国开发人员快速上手STM32CubeIDE,并且能更好地理解和利用其中的功能。 中文手册包含了对STM32CubeIDE界面的介绍,包括工程视图、源代码编辑器、调试器等等。它还介绍了如何创建新项目和导入现有项目,并详细说明了项目配置的各个选项。此外,手册还解释了如何使用各种编译器功能,如编译、构建、调试等。其目的是帮助开发人员了解STM32CubeIDE的各种功能,从而更好地进行嵌入式开发。 手册的最后一部分介绍了如何使用STM32Cube软件包,这是STM32CubeIDE的一个重要组成部分。它包含了许多现成的软件组件,如驱动程序、库文件和例程,以帮助开发人员快速构建应用程序。这部分手册详细说明了如何选择和配置不同的软件包,并提供了一些示例代码以供参考。 总结来说,STM32CubeIDE中文手册是一份全面而详细的说明文档,适用于想要使用STM32CubeIDE开发STM32微控制器的开发人员。它提供了对整个开发过程的详细指导,帮助用户更好地了解和使用STM32CubeIDE的各种功能和工具。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值