0

我正在努力lpcxpresso (lpc1768)。我在我已经编写的代码中包含了一个.h文件和两个.c文件(这些文件是使用flexand创建的bison)。我想在“快速设置”下使用“Newlib(semihost)”选项。当我构建我的代码时,它显示了一些错误:

“c:\nxp\lpcxpresso_6.1.2_177\lpcxpresso\tools\bin../lib/gcc/arm-none-eabi/4.6.2/../../../../arm-none-eabi /include/newlib_inc/stdint.h:79:21:错误:“int32_t”的类型冲突”

“c:\nxp\lpcxpresso_6.1.2_177\lpcxpresso\tools\bin../lib/gcc/arm-none-eabi/4.6.2/../../../../arm-none-eabi /include/newlib_inc/stdint.h:80:23: 错误: 'uint32_t' 的类型冲突"

当我切换到 Redlib 库时,这些错误不会发生,但会出现其他一些问题。我想使用 Newlib。

为什么会发生这些错误?我需要做什么?

4

1 回答 1

0

由于 int32_t 和 uint32_t 在不同头文件中的多个定义而出现此错误。检查构建日志以查找与此多重定义/声明发生位置相关的任何信息。看看你是否可以为这些类型定义使用系统头文件,如果你的头文件中有额外的代码,使用条件宏来禁用 typedef 部分。希望这可以帮助。

于 2015-07-28T09:38:11.407 回答