Plotly包安装失败求助:lazy loading报错及依赖库缺失问题
解决Plotly安装失败:tidyr共享库加载错误及时区警告问题
我之前也碰到过类似的R包依赖问题,你的核心故障是tidyr包的共享库无法找到依赖的libc++.1.dylib文件,连带导致Plotly的懒加载失败,同时还有时区配置的警告。咱们一步步来解决:
第一步:先处理时区警告(非核心但优化环境)
错误里的时区提示unknown timezone 'zone/tz/2017c.1.0/zoneinfo/Europe/London'是因为R读取的时区路径异常,你可以:
- 临时在R会话中设置正确时区:
Sys.setenv(TZ = "Europe/London") - 永久生效的话,找到你的R配置文件
.Renviron(如果没有就新建一个),添加一行:TZ="Europe/London"
第二步:修复tidyr的共享库加载问题(Plotly安装失败的关键)
从错误信息看,你用的是R 3.4版本(2017年的旧版本),对应的tidyr包版本和当前系统的libc++库不兼容,给你三个可行方案:
方案1:重新安装适配R 3.4的tidyr版本
优先尝试安装二进制包(避免编译问题):
install.packages("tidyr", type = "binary")
如果二进制包无法获取,就手动安装兼容的旧版本(tidyr 0.8.2支持R 3.4):
install.packages("https://cran.r-project.org/src/contrib/Archive/tidyr/tidyr_0.8.2.tar.gz", repos = NULL, type = "source")
方案2:修复系统库链接(Mac系统专属)
从路径能判断你用的是Mac,用install_name_tool修改tidyr.so的库引用路径:
打开终端执行:
install_name_tool -change /Library/Frameworks/R.framework/Versions/3.4/Resources/lib/libc++.1.dylib /usr/lib/libc++.1.dylib /usr/local/lib/R/3.4/site-library/tidyr/libs/tidyr.so
这个命令会把tidyr依赖的旧库路径替换成系统默认的libc++库位置。
方案3:升级R版本(最彻底的解决方式)
R 3.4版本过于老旧,很多新包已经停止支持,后续还会遇到更多依赖兼容性问题。如果条件允许,升级到最新稳定版R,再重新安装plotly,大部分依赖问题会自动消失。
最后:重新安装Plotly
等tidyr的问题解决后,在R里重新执行:
install.packages("plotly")
内容的提问来源于stack exchange,提问作者Amleto
相关产品推荐
相关产品推荐

