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

RStudio加载edgeR因libgfortran.5.dylib失败,但Base R可正常运行

RStudio中edgeR包加载失败的解决方法

问题概述

已通过BiocManager::install("edgeR")成功安装edgeR包,但在RStudio中执行library(edgeR)时,出现libgfortran.5.dylib缺失错误,提示找不到/opt/gfortran/lib/gcc/aarch64-apple-darwin20.0/12.2.0/libgfortran.5.dylib;但在Mac终端或RStudio内置终端启动R后,可正常加载并使用edgeR。

当前环境:

  • macOS Ventura 13.3.1(arm64架构)
  • R 4.3.0(arm64)
  • 通过arm64版Homebrew安装gcc/gfortran,已配置~/.R/Makevars:
CC=gcc-13
CXX=g++-13
FLIBS   =-L/usr/local/gfortran/lib
F77     = /usr/local/gfortran/bin/gfortran
FC      = /usr/local/gfortran/bin/gfortran

解决方案

方案1:重新编译edgeR包(推荐)

edgeR当前的二进制包链接的是/opt/gfortran路径下的库,但你的gfortran安装在/usr/local/gfortran,所以需要从源码重新编译安装:

  1. 卸载现有edgeR包:
remove.packages("edgeR")
  1. 确保~/.R/Makevars配置正确(保持你现有的内容即可);
  2. 在RStudio中执行源码安装:
BiocManager::install("edgeR", type = "source")

安装完成后再尝试library(edgeR)。

方案2:手动添加gfortran库路径到RStudio环境

如果重新编译无效,可临时或永久添加库路径:

  • 临时生效:在RStudio控制台执行:
Sys.setenv(DYLD_LIBRARY_PATH = "/usr/local/gfortran/lib:$DYLD_LIBRARY_PATH")
library(edgeR)
  • 永久生效:编辑~/.Renviron文件(若不存在则新建),添加一行:
DYLD_LIBRARY_PATH="/usr/local/gfortran/lib:$DYLD_LIBRARY_PATH"

保存后重启RStudio即可。

方案3:确认RStudio使用的R版本

检查RStudio与终端使用的R版本是否一致:

  • RStudio中执行:R.home()
  • 终端R中执行:R.home()
    若路径不同,在RStudio的Tools -> Global Options -> General中选择终端对应的arm64版R。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.22 00:05:34