我正在尝试使用 Cywin、GCC、Eclipse 和 OpenOCD 从 Windows 7 进行交叉编译,以将程序加载到 ARM 微 Controller 上。但是,在尝试构建我的项目时,无论我使用的是 Eclipse 还是 Cygwin 终端,我都会遇到问题。从终端,我得到这个错误:
cc1.exe:错误:无法识别的命令行选项“-std=gnu90”
可以通过从 Cygwin 下载另一个包来解决这个问题吗?有人知道这个问题的解决方案吗?
谢谢!
最佳答案
您正在寻找的选项可能是 -std=gnu89
最新版本的 GCC 同时接受 -std=gnu89
和 -std=gnu90
但 4.4 版及更早版本仅接受 89
.
GCC 支持的标准版本通常被称为 ANSI C(或 C89,因为 ANSI 标准于 1989 年获得批准)或 ISO C90(因为 ISO 在 1990 年重新发布了相同的文档),因此对应的选项是有时拼写 -std=c89
有时 -std=c90
或 -std=iso9899:1990
对于想要真正冗长的人!
关于为 "-std=gnu90"编译 C 项目错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17068648/