我试图编译一个usb环回例子STM32使用arm-无eabi-gcc,但被一个编译错误的bool变量。错误为error: expected ';', identifier or '(' before '_Bool',违规行为
typedef enum
{
FALSE = 0, TRUE = !FALSE
}
bool;据我所读,bool似乎是_Bool的别名,而gcc则是一种实际的类型。不幸的是,我不知道如何解决这个问题。在googling中,我读到类似的问题有时与在其他地方定义TRUE和FALSE有关,但我使用的是STM中的基本不变的代码,并且不知道其他地方可能会定义它们。我还读到,这可能是由于链接到libc,但在用-nostdlib编译时也会出现同样的错误。我能做些什么来缩小这个问题吗?谢谢。
发布于 2015-11-17 15:04:53
由于这个ty胡枝子试图定义bool类型,而我的编译器试图使用_Bool类型,所以我最后所做的是将typedef注释到一起,只需使用
#define TRUE 1
#define FALSE 0我不确定这解决了问题,因为我仍然不能让usb设备枚举,但程序现在编译。
https://stackoverflow.com/questions/33682173
复制相似问题