Ubuntu16.04下CRAN3.4.3安装R语言png包失败求助
解决Ubuntu 16.04下R 3.4.3安装png包失败的问题
嘿,我来帮你搞定这个png包安装失败的问题!从你的错误日志能看出来,编译过程其实没问题,但加载生成的png.so时,系统找不到libpng16.so.16这个动态链接库。下面是几个针对性的解决步骤:
方案一:安装系统层面的libpng16库
Ubuntu 16.04的官方软件源里自带了需要的libpng库,先通过apt安装:
sudo apt-get update sudo apt-get install libpng16-16
安装完成后,重新打开R,再尝试安装png包:
install.packages("png", dependencies=TRUE)
方案二:指定Anaconda的libpng路径给R
从编译日志能看到,你的R编译时用了Anaconda2里的libpng,但运行时没找到这个路径。可以临时设置环境变量让系统识别到:
export LD_LIBRARY_PATH=/home/steve/anaconda2/lib:$LD_LIBRARY_PATH
设置完后,启动R再执行安装命令即可。如果想永久生效,可以把这条命令添加到你的~/.bashrc文件里。
方案三:强制使用系统的libpng编译(避开Anaconda)
如果不想依赖Anaconda的库,可以让R用系统自带的libpng来编译:
- 先在终端获取系统libpng的配置信息:
libpng-config --cflags --libs
- 打开R,设置编译环境变量并安装:
Sys.setenv(PKG_CONFIG_PATH="/usr/lib/x86_64-linux-gnu/pkgconfig") install.packages("png", dependencies=TRUE, configure.args="--with-libpng=/usr")
验证安装成功
不管用哪个方案,安装完成后在R里执行以下命令验证:
library(png)
如果没有报错,就说明png包已经成功安装并可以使用啦!
内容的提问来源于stack exchange,提问作者Steve
相关产品推荐
相关产品推荐

