You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

2016款MacBook Air中R语言安装CARD包(依赖devtools)失败求助

解决Mac下安装R包CARD时gfortran链接失败的问题

核心问题是R编译时默认查找的gfortran路径/opt/gfortran/lib不存在,而Homebrew安装的gcc(包含gfortran)路径不在该位置,导致链接失败。以下是具体解决步骤:

步骤1:确认Homebrew安装的gfortran路径

打开终端,执行命令定位gfortran位置:

which gfortran
  • Intel芯片:输出通常为/usr/local/bin/gfortran
  • Apple Silicon(M1/M2)芯片:输出通常为/opt/homebrew/bin/gfortran

再执行命令查看gfortran版本:

gfortran --version

记下版本号(比如13.2.0),后续步骤会用到。

步骤2:创建软链接匹配R的默认查找路径

首先创建R默认查找的目录(如果不存在):

sudo mkdir -p /opt/gfortran/lib/gcc/x86_64-apple-darwin20.0/

针对Intel芯片

将Homebrew安装的gfortran库链接到R的默认路径:

# 链接核心库文件
sudo ln -s /usr/local/lib/gcc/[你的版本号]/libgfortran.* /opt/gfortran/lib/
sudo ln -s /usr/local/lib/gcc/[你的版本号]/libquadmath.* /opt/gfortran/lib/

# 链接gcc版本目录
sudo ln -s /usr/local/lib/gcc/[你的版本号]/ /opt/gfortran/lib/gcc/x86_64-apple-darwin20.0/[你的版本号]

把[你的版本号]替换为步骤1中获取的实际版本号(比如13)。

针对Apple Silicon芯片

执行以下命令创建软链接:

# 链接核心库文件
sudo ln -s /opt/homebrew/lib/gcc/[你的版本号]/libgfortran.* /opt/gfortran/lib/
sudo ln -s /opt/homebrew/lib/gcc/[你的版本号]/libquadmath.* /opt/gfortran/lib/

# 链接gcc版本目录
sudo ln -s /opt/homebrew/lib/gcc/[你的版本号]/ /opt/gfortran/lib/gcc/x86_64-apple-darwin20.0/[你的版本号]

同样替换[你的版本号]为实际版本号。

步骤3:重新安装CARD包

回到R/RStudio,重新执行安装命令:

install.packages('devtools')
library(devtools)
devtools::install_github('YingMa0107/CARD', dependencies = TRUE)

备选方案:修改R编译配置文件

如果软链接方法无效,可以直接修改R的编译配置:

  1. 在终端创建R配置目录(如果不存在):
mkdir -p ~/.R
  1. 创建并编辑Makevars文件:
touch ~/.R/Makevars
open ~/.R/Makevars
  1. 根据芯片类型添加以下内容,替换[你的版本号]:
    • Intel芯片:
      FLIBS=-L/usr/local/lib/gcc/[你的版本号] -lgfortran -lquadmath
      
    • Apple Silicon芯片:
      FLIBS=-L/opt/homebrew/lib/gcc/[你的版本号] -lgfortran -lquadmath
      
  2. 保存文件后重启R/RStudio,再重新安装CARD包。

内容的提问来源于stack exchange,提问作者Iwan R

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.22 10:05:38