为什么我有两个版本的gcc和g++;在MacOSX中?
在安装Xcode和CommandlineTools之前,我刚刚重新安装了macosxyosemite 似乎我在以下两个目录中有两个gcc和g++版本:为什么我有两个版本的gcc和g++;在MacOSX中?,macos,gcc,g++,command-line-tool,Macos,Gcc,G++,Command Line Tool,在安装Xcode和CommandlineTools之前,我刚刚重新安装了macosxyosemite 似乎我在以下两个目录中有两个gcc和g++版本: /usr/bin(两个文件都是14kb)和 /Library/Developer/CommandLineTools/usr/bin(g++只是一个别名,gcc是19kb) 在终端中输入“which gcc”给我“/usr/bin/gcc”,输入“which g++”给我“/usr/bin/g++”,这意味着系统将只在/usr/bin中使用gcc和
我对MacOSX目前实际使用的是哪个gcc/g++感到非常困惑 macosx不使用gcc(g++)。自MacOSX10.7以来,它默认为叮当声。因此,当您键入gcc或g++进行编译时,它实际上使用了Clang(cc)基本上当您调用'cc'或'cxx'或'c++'时,您调用的是Clang。有关Apple clang()状态的更多信息,请阅读此处 除了@adnan kamili所说的之外,你可能想知道苹果为什么会这么做。下面是利娅·勒贝杰夫的简短回答() 他们做出决定的一个因素当然可能是GCC的许可证。GPL 对于非自由软件,它的限制性很强。 具体而言,GPL要求提供衍生项目 他们的完整和开放源码,也根据GPL授权 而苹果公司可以采取的合理措施是 让一些聪明的工程师来加强GCC对 苹果的一切,许可证都要求他们的作品是 在GPL下发布——这是一个大范围内的棘手问题 公司,因为这可能会迫使苹果大量收购 连接到GCC的软件也将在GPL下发布 Clang是在更宽容的大学开放的。 伊利诺伊州许可证,允许苹果公司开发 在不发布完整源代码的情况下发出叮当声
这不是一个编程问题。离题。