为什么Mac开发人员将g ++链接到clang,而不是clang ++?

问题描述 投票:4回答:1

[当我遇到一个]时,我只是试图向某人解释编译后的代码与解释后的代码之间的区别>

main.cpp:1:10: fatal error: 'iostream' file not found

当调用g ++ main.cpp获得简单的hello world c ++文件时。

我仔细研究了一下,发现...

JM:Desktop user$ which g++
/usr/local/bin/g++
JM:Desktop user$ ls -al /usr/local/bin/g++
lrwxr-xr-x  1 user  admin  47  4 Dez  2018 /usr/local/bin/g++ -> /Library/Developer/CommandLineTools/usr/bin/c++
JM:Desktop user$ ls -al /Library/Developer/CommandLineTools/usr/bin/c++
lrwxr-xr-x  1 root  wheel  5  3 Feb 20:29     /Library/Developer/CommandLineTools/usr/bin/c++ -> clang

...该g ++链接到clang而不是clang ++,因此我将其称为C编译器。

我刚刚删除了开发人员工具,然后再次安装它们-一样。

这是正常现象还是使系统混乱?有什么意义吗?我想念什么?

感谢您的帮助!

当我遇到main.cpp:1:10:致命错误:调用g ++ main时找不到iostream文件。 >

c++ c macos clang clang++
1个回答
4
投票

实际上可能是Homebrew的错...

JM:Desktop user$ echo $PATH
/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Library/TeX/texbin
© www.soinside.com 2019 - 2024. All rights reserved.