brew安装R后安装mvtnorm包报gfortran-4.2 CPU类型不兼容错误如何解决
报错原因
错误核心是当前Mac系统中R调用的是已过时的32位gfortran-4.2编译器,与当前设备的CPU架构不兼容,无法完成mvtnorm包的Fortran源码编译。
解决方法
优先方案:直接安装预编译二进制包(无需配置编译环境)
打开R后直接运行以下命令即可跳过源码编译步骤:
install.packages("mvtnorm", type = "binary")
备选方案:配置兼容的编译环境(适合需要从源码安装所有包的场景)
- 第一步:终端运行命令安装适配当前CPU架构的gcc套件(内置最新gfortran编译器):
brew install gcc - 第二步:安装完成后终端运行
gfortran --version查看安装的gfortran版本号,比如输出显示版本为13,则版本号为13 - 第三步:创建/修改R的编译配置文件,终端运行:
在打开的编辑器中粘贴以下内容,将所有版本号替换为你上一步查询到的实际版本:mkdir -p ~/.R nano ~/.R/Makevars
按# Intel芯片Mac填写如下内容 FC = /usr/local/bin/gfortran-13 F77 = /usr/local/bin/gfortran-13 FLIBS = -L/usr/local/opt/gcc/lib/gcc/13 # M系列苹果芯片Mac填写如下内容 # FC = /opt/homebrew/bin/gfortran-13 # F77 = /opt/homebrew/bin/gfortran-13 # FLIBS = -L/opt/homebrew/opt/gcc/lib/gcc/13Ctrl+O保存,按Ctrl+X退出编辑器 - 第四步:重启R,重新运行
install.packages("mvtnorm")即可完成安装
内容的提问来源于stack exchange,提问作者Yasin
相关产品推荐
相关产品推荐

