1

我正在使用 avr-gcc 在命令行上编译

我正在使用的其中一项包含以下几行:

#ifndef F_CPU
#warning No CPU speed specified - assuming Axon is running at 16MHz
#define F_CPU 16000000
#endif

#if F_CPU != 16000000
#warning "AxonII normally runs at 16MHz but you have defined a different value"
#endif

当我运行 make 我得到:

In file included from main.c:7:
../webbotavrclib/sys/axon2.h:86:11: error: operator '!=' has no left operand

第 86 行在#if F_CPU != 16000000上面。我不确定为什么会收到错误消息。

4

1 回答 1

1

例如,可以为以下编译生成此类消息:

$ gcc main.c -DF_CPU=
  main.c:6:11: error: operator '!=' has no left operand

请注意,F_CPU 已定义,但不是供 != 使用的任何东西。

于 2011-03-20T01:08:59.427 回答