Mac端R/RStudio反复安装stringi包失败问题咨询
问题诱因
两个报错分别对应独立的问题:
- 在线安装失败是网络连接问题:默认配置的CRAN镜像服务器在境外,国内访问连接不稳定,下载包文件到9.3MB时触发了R默认的60秒超时限制,文件没下全所以安装中断。
- 手动安装后加载失败是版本匹配问题:你下载的二进制安装包是针对R 4.1版本编译的,和你本地运行的R 4.2版本不兼容,包依赖的R 4.1版本动态链接库
libR.dylib在本地不存在,所以加载时提示找不到镜像文件。
解决步骤
按顺序操作即可:
- 先清理之前安装失败的残留文件,在R控制台执行:
remove.packages("stringi")
- 替换国内可正常访问的CRAN镜像,同时调大下载超时阈值:你可以打开RStudio的
Tools -> Global Options -> Packages菜单,点击CRAN镜像旁的Change按钮,选择国内的镜像源(比如清华、中科大维护的镜像都稳定可用),确认后重启R会话。之后在控制台执行以下命令把超时时间调整为5分钟,避免大文件下载中断:
options(timeout = 300)
- 直接重新在线安装stringi即可:
install.packages("stringi")
- 等stringi安装完成后,再执行
install.packages("likert")就能自动完成所有依赖安装,不会再报错。
如果遇到特殊情况换镜像后仍无法下载二进制包,可以选择从源码编译安装:先打开Mac终端执行xcode-select --install安装Xcode命令行编译工具,安装完成后回到R控制台执行以下命令即可完成安装:
install.packages("stringi", type = "source")
注意:手动下载二进制包本地安装时,必须选择和你本地R大版本完全对应的编译包,跨大版本(比如4.1和4.2之间)的二进制包无法通用,必然会出现动态库依赖缺失的报错。
内容的提问来源于stack exchange,提问作者mshelomi
相关产品推荐
相关产品推荐

