编辑:我现在认为最好使用Homebrew来完成这个任务:
brew reinstall gcc48 --with-fortran
虽然我认为以下的步骤可以奏效,但并不如前面所说的那样干净。无论如何,我仍然建议按照下面所述的方式配置~/.R/Makevars。
接下来,根据@TheBigMike提供的答案,我使用了以下步骤安装homebrew旁边的gfortran-4.8,并配置R以选择这个fortran编译器。
首先,下载并解压gfortran 4.8:
su admin
curl -O http://r.research.att.com/libs/gfortran-4.8.2-darwin13.tar.bz2
mkdir /tmp/gfortran
tar fvxz gfortran-4.8.2-darwin13.tar.bz2 -C /tmp/gfortran
删除干扰 Homebrew 的 gfortran
文件别名:
rm /tmp/gfortran/usr/local/bin/gfortran
安装gfortran 4.8
cp -r /tmp/gfortran/usr/local/ /usr/local
为了告诉R使用gfortran 4.8,需要创建一个名为~/.R/Makevars
的文件:
mkdir -p ~/.R
touch ~/.R/Makevars
将以下内容放入~/.R/Makevars
中:
FLIBS=""
F77="gfortran-4.8"
FC="gfortran-4.8"
现在重新启动R。一旦R被重新启动,任何依赖于fortran 4.8的包现在都应该可以工作了。 homebrew应该没有受到影响。
gfortran-4.8 --version
进行测试),但现在出现错误f951: internal compiler error: Abort trap: 6
。 - topepo