如何用Homebrew gfortran替换HPC gfortran?
我目前在优胜美地系统上安装了Xcode(以及命令行工具)和HPC的gfrotran
,并想用Homebrew 替换 HPC的gfortran(因为在使用HPC gfortran构建Python软件包时遇到了麻烦)。
有哪些步骤可以做到这一点?
我要确定
- HPC的gfortran不见了(我只想要一个Fortran),
- 苹果的工具仍然有效(适用于Xcode,Swift,OS X和iOS开发等)
而且当然
- 我有gfortran的有效版本,可以可靠地构建Python软件包。
能做到吗?例如,我看到Homebrew的gfortran现在已经作为gcc的一部分打包了,所以看来我最终会得到两个版本的gcc(我想避免)或一个版本无法在Xcode中很好地使用。
完成1-3的步骤是什么?
-
我最近解决了同样的问题。这就是我在Yosemite系统上运行它的方式。
有关自制程序和命令行工具编译器的一些信息:
-
您通过家庭酿造让编译器将覆盖现有的一个 ,如果 它是在同一个地方。如果您有从命令行工具获得的fortran编译器,则不会受到影响(Home-brew将在执行任何操作之前警告您有关此信息)
-
通过命令行工具获得的编译器的二进制文件在中
/usr/bin
。 -
使用home-brew获得的编译器(以及其他任何东西)都存储在cellar(
/usr/local/Cellar
)中,并且可执行文件链接到该目录中/usr/local/bin
。
该怎么办?
-
修改路径 :我只需要使用通过home-brew获得的编译器,因此我移到
/usr/local/bin
了我的顶部,$path
这确保了在/usr/local/bin
之前搜索目录/usr/bin
。 -
使用别名 :您可以为每个编译器创建一个别名,以便您可以根据需要互换使用它们。要创建别名,您将必须修改shell-rc文件。在我的系统上,我使用tcsh,并为自制编译器创建别名,我会在〜/ .cshrc文件中添加与此类似的内容。
alias brewgfortran '/usr/local/bin/gfortran'
现在,它将执行存储在我的地窖中并链接到的自制gfortran-4.9可执行文件
/usr/local/bin/gfortran/
- 如果您绝对要删除Apple编译器,则可以从
/usr/bin/
目录中完全删除它们。我认为这不是最好的主意。我向您展示了几种避免使用它们的方法,并且如果出于某种原因需要它们,您将是SOL。我不能说您需要的那些工具是否可以在没有它们的情况下工作,因为我从未使用过这些工具,但是我知道它将为您构建python软件包(对不起,希望对您有所帮助)
注意: 如果您没有使用与我相同的shell,则别名的语法略有不同(我认为),只需将其谷歌搜索或
man alias
-