提问者:小点点

为什么我不能从4.2更改gcc编译器。1到更高版本?


我试图替换包含的GCC4.2。我的Mac Book Pro上有1个编译器,使用最新版本的Mac OSX,但无法找出我做错了什么:

这个屏幕从我的外壳上刮下来对我来说也没有意义:

Johans MBP:bin johanlindfors$gcc--version
配置为:--prefix=/Applications/Xcode。app/Contents/Developer/usr——带有gxx include dir=/Applications/Xcode。app/Contents/Developer/Platforms/MacOSX。平台/开发者/SDK/MacOSX10。14.sdk/usr/include/c/4.2。1苹果LLVM版本10.0。0(clang-1000.11.45.5)目标:x86_64-apple-darwin18。2.0线程模型:posix InstalledDir:/Applications/Xcode。app/Contents/Developer/toolschains/xcodefault。xToolchain/usr/bin
Johans MBP:bin johanlindfors$哪个gcc
/usr/local/bin/gcc
Johans MBP:bin johanlindfors$/usr/local/bin/gcc--version
gcc(自制gcc 8.2.0)8.2。0版权(C)2018免费软件基金会,这是免费软件;有关复制条件,请参见源。没有担保;甚至不是为了适销性或适合某一特定目的。

Johans-MBP:本johanlindfors$


共2个答案

匿名用户

这是因为它实际上是苹果叮当假装是海湾合作委员会。

匿名用户

系统gcc-4.2.1编译器是从gcc迁移到clang编译器的(非常古老的)遗产。它不应该用于您自己的代码。编辑您的. file. tcschc,将较新的gcc目录前置到路径中。或者节省大量时间和精力,使用MacPorts。

不幸的是,Clang已经在gcc-4.2.1中建立了“绝对”兼容性:参见:clang-E-dM-

这不是一件坏事。一旦编译器获得牵引力,它将提供自己的扩展,不再跟踪其他扩展。许多扩展保持兼容,如英特尔的

“稳定”的gcc现在是8.2。0根据MacPorts。稳定的MacPorts clang(与OSX冲突激烈)显然是7.0。0。。。简短的故事-不要随意替换您认为可能有效的文件集。然后正确设置路径-IIRC,MacPorts将为您执行此操作。

我提供了一个最近的总结:这里。