RStudio更新后rlang包安装编译失败 依赖包无法加载求助
问题原因
- 核心报错来自macOS本地缺失Xcode命令行编译工具:日志里的
xcrun: error: invalid active developer path是典型的编译组件缺失/失效提示,你选择安装需要本地编译的rlang源码包时,系统找不到编译工具直接导致安装失败。 - 注意:R跨大版本升级(比如4.0.x升级到4.1/4.2系列)后,旧版本的包存储路径和新版本不兼容,之前安装的包无法被识别是正常现象,不是文件被误删。
解决方案
二选一即可,优先选方法1,速度最快。
方法1:安装预编译二进制版(无需配置系统环境)
- 安装rlang时弹出「存在可用二进制版本,源码版本更新需要编译」的提示时,直接输入
no回车,R会自动下载预编译完成的rlang 1.0.2版本,不需要本地编译,不会触发编译报错,安装完成即可正常使用。 - 如果不想每次手动选择,可以直接在R控制台运行以下命令,设置默认优先安装二进制包,再执行安装:
options(install.packages.check.source = "no") install.packages("rlang")
1.0.2版本的rlang完全满足tidyverse等依赖包的版本要求,不会影响功能使用。
方法2:修复本地编译环境(适配所有需要编译的R包)
如果后续需要经常安装最新源码版R包,可以先修复系统编译环境:
- 打开macOS自带的终端(Terminal)应用,运行以下命令触发命令行工具安装:
xcode-select --install
- 在弹出的系统安装窗口中点击同意许可协议,等待安装完成(安装包约几百MB,根据网络情况等待数分钟即可)
- 安装完成后回到R控制台,正常执行
install.packages("rlang")即可,不管选择源码版还是二进制版都能正常安装,后续其他需要本地编译的R包也不会再出现同类报错。
验证
安装完成后在R控制台运行library(rlang),无报错后再运行library(tidyverse)能正常加载,即说明问题修复完成。
内容的提问来源于stack exchange,提问作者Judy Rady
相关产品推荐
相关产品推荐

