如何将Anaconda Python默认编译器更改为更新版本的GCC?

Rak*_*aku 8 python gcc

python使用的gcc版本未更新.问题有点类似于这个问题,但不幸的是答案并没有帮助:

如何将Python默认编译器更改为GCC?

我正在使用centOS 6.5并安装anaconda 2.

已经使用这种方式更改了默认GCC的版本

$ sudo yum install centos-release-scl
$ sudo yum install devtoolset-3-toolchain
$ echo "scl enable devtoolset-3 bash">>~/.bash_profile
$ scl enable devtoolset-3 bash
Run Code Online (Sandbox Code Playgroud)

并且还将/ usr/bin/gcc中的gcc更改为与devtoolset-3中的新gcc链接

我用的时候

$ gcc -v
Run Code Online (Sandbox Code Playgroud)

信息就像

gcc version 4.9.2 20150212 (Red Hat 4.9.2-6) (GCC) 
Run Code Online (Sandbox Code Playgroud)

但是当我键入python时它仍然显示

Python 2.7.13 |Anaconda 4.3.1 (64-bit)| (default, Dec 20 2016, 23:09:15) 
[GCC 4.4.7 20120313 (Red Hat 4.4.7-1)] on linux2
Run Code Online (Sandbox Code Playgroud)

Rol*_*ber 0

正如评论中提到的,Python 解释器是由 Anaconda 编译的,并且将始终显示编译时使用的 gcc 版本。您在操作系统中安装的编译器没有影响。

Anaconda 将其编译器作为单独的包提供,您可以安装和使用。不过该gcc包来自旧的工具链。使用新的编译器工具链,编译器和相关工具的名称更长,并且包括编译器工作的体系结构。

如果您希望其他软件包使用 Anaconda 的编译器,您可能必须设置环境变量,具体取决于其他软件包自身的构建/安装方式。我认为对此没有通用的解决方案。只要有可能,您就应该使用 Anaconda 中的包而不是 PyPI,因为前者是用合适的编译器预编译的。