我想重新开始写c++代码,我才发现自制版的 gcc
不能编译任何c++、c、甚至fortran程序。
例如,我试图编译以下简单的hello_world.cpp程序。
#include<iostream>
int main()
{
std::cout << "Hello World!" << std::endl;
return 0;
}
使用
g++-9 hello_world.cpp
我得到的输出是。
FATAL:/usr/local/Cellar/cctools/855/bin/../libexec/as/x86_64/as: I don't understand 'm' flag!
我试图安装 gcc@8
, gcc@7
,然后编译,但我还是得到同样的消息。
此外,当我试图编译一个叫做","的程序时,也显示了同样的错误信息。hello_world.c
程序使用 gcc-9
和a hello_world.f90
程序使用 gfortran-9
.
方案 *.c
和 *.cpp
编译正常 clang
和 clang++
编译器分别。我还了解到 as
是一个汇编器,而且gcc可以输出一个 *.s
文件,使用标志 gcc -S
但我还是不明白错误信息。
我想我在发帖之前已经用尽了我的c++知识和网络搜索,所以先谢谢大家了!
最后,我用以下方法重新安装了所有软件包
brew list | xargs brew reinstall
这就解决了问题!