将 Mac OS X 系统的 C、C++ 编译器从默认的 Clang 切换到 GCC

来源:互联网 发布:西安市行知中学 编辑:程序博客网 时间:2024/05/14 02:13

Preface

Mac 的 OS X 系统的 C语言 编译器用的是 Clang,如下图,在 Terminal 输入 gcc -v 或者 gcc --version 后,显示 C语言 的编译器:

这里写图片描述

但是很多时候,比如说编译很多工具,如 Caffe,Clang 编译器会产生很多 warning 以及 error。虽然说 Clang、LLVM 啥的甩 GCC 几条街,但是我不想在这里浪费时间。干脆将编译器切换到大家默认的 GCC 。这样方便一些。

但是该怎么切换了,我之前也尝试过,没成功。今晚又一次尝试了,终于成功了。记录下来,一是可以给也想改变的人参考,二是以后再切换回 LLVM 的 Clang 的时候,有个参考。

将 Mac OS X 系统的 C、C++ 编译器从默认的 Clang 切换到 GCC

我参考了一些问答及博客文章,一是 stackoverflow 上这个人的回答:
http://stackoverflow.com/questions/20349104/using-gcc-instead-of-clang-in-ghci-or-ghc

这个人还需要在 Mac 上安装 ghc 命令,这东西我不知道是什么。但整整耗费了我 1G 的翻墙流量(正常下,得下到猴年马月)。但按照步骤来做,我自己碰见的情况却跟他的步骤对不上号,不敢瞎尝试。于是再找找其他办法。

随后,我在 stackexchange 上找到了下面的问答:
http://apple.stackexchange.com/questions/99077/how-to-set-gcc-4-8-as-default-gcc-compiler
抱着尝试的心,去试了,居然成功了。操作如下,很简单:

$sudo vim ~/.bash_profile

.bash_profile 文件中,添加如下几行:

alias gcc='gcc-4.7'alias cc='gcc-4.7'alias g++='g++-4.7'alias c++='c++-4.7'

上面的 gcc-4.7 是我自己用 brew install gcc47 安装的版本,这个根据你自己的实际情况改动。

之后,source ~/.bash_profile,再输入 gcc -v 或者 gcc --version,显示为 gcc 4.7 了:

这里写图片描述

可以看见,已经更改成功了。

注:
我用 brew 安装的 brew install gcc47 位置:

/usr/local/Cellar/gcc47/4.7.4

这里写图片描述

我用 brew 安装的 brew install ghc 安装的位置:

/usr/local/Cellar/ghc/8.0.1

这里写图片描述


PostScript

多说一句:

因为我不用 Mac 做 iOS 开发,所以这个更改对我应该没影响。但是如果你要做 iOS 开发,我想要慎重。总之,我们在 *nix 系统中做什么改变,都应该清楚自己在做什么。那么即使做错了,也能够恢复回去。

1 0
原创粉丝点击