安装R-package XML遇到的问题和解决方式

这个问题已经困扰了我很久很久一直找不到解决之法,后来终于找到了!

Fedora 27, R 3.5.0, libxml和libxml2以及开发包均已安装和更新,系统另有anacoda3。

遇到的问题:

直接在R下

>install.packages(“XML”) 并选择CRAN镜像后,出现安装错误,提示库版本不一致问题

(原错误已遗失,贴出来自 https://stackoverflow.com/questions/37035088/unable-to-install-r-package-due-to-xml-dependency-mismatch 的网友问题 )

trying URL 'https://cloud.r-project.org/src/contrib/XML_3.98-1.4.tar.gz'Content type 'application/x-gzip' length 1599214 bytes (1.5 MB)==================================================downloaded 1.5 MB* installing *source* package ‘XML’ ...** package ‘XML’ successfully unpacked and MD5 sums checkedchecking for gcc... gcc
checking for C compiler default output file name... a.outchecking whether the C compiler works... yes
checking whether we are cross compiling... nochecking for suffix of executables... checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking how to run the C preprocessor... gcc -E
checking for sed... /usr/local/Library/ENV/4.3/sed
checking for pkg-config... /usr/local/bin/pkg-config
checking for xml2-config... /Users/richiethomas/anaconda/bin/xml2-config
USE_XML2 = yes
SED_EXTENDED_ARG: -EMinor 9, Patch 2 for 2.9.2Located parser file -I/Users/richiethomas/anaconda/include/libxml2/parser.hChecking for 1.8:  -I/Users/richiethomas/anaconda/include/libxml2Using libxml2.*checking for gzopen in -lz... yes
checking for xmlParseFile in -lxml2... yesYou are trying to use a version 2.* edition of libxml
but an incompatible library. The header files and library seem to be
mismatched. If you have specified LIBXML_INCDIR, make certain to also
specify an appropriate LIBXML_LIBDIR if the libxml2 library is not in the defaultdirectories.ERROR: configuration failed for package ‘XML’* removing ‘/usr/local/lib/R/3.2/site-library/XML’

按照 https://forums.fedoraforum.org/showthread.php?315915-can-not-install-xml-package-in-R 的提示,这应该是由于 “it looks from your output that R was looking for libxml-1.8 headers but found the libxml2 headers instead” 的关系,于是按照错误提示,系统目前默认从libxml2目录(anacoda3中的libxml2目录)中查找对应文件导致无法顺利编译,而解决方案应为将LIBXML_INCDIR以及LIBXML_DIR指定为libxml-1.8的对应目录,而为了以后python的使用着想,不建议采用链接题主所用的直接删除anacoda3的方式。

为了确认这一点,首先在terminal里:

$ xml2-config --cflags

输出结果为(根据不同用户习惯anaconda安装路径不同):

-I/data/home/heshuai/anaconda3/include/libxml2  -I/data/home/heshuai/anaconda3/include

$ locate xml2-config

则输出

/usr/bin/xml2-config
/usr/share/man/man1/xml2-config.1.gz

所以需要在安装XML的过程中(本人也只尝试了第二条),

1) 或者在.bashrc中将LIBXML_INCDIR设置为

$ /usr/bin/xml2-config --cflag的输出目录 (https://support.bioconductor.org/p/1639/),

再完成后续安装 (作者本人未尝试);

2) 或者参考https://stackoverflow.com/questions/40682615/cannot-install-xml-package-in-r/48355121#48355121 的第一条回答,

进入R,

>Sys.setenv(XML_CONFIG="/usr/bin/xml2-config") #指定安装时libxml2的目录

>install.packages("XML")

问题解决。

虽然网上有教程用conda install r-xml

但是conda对应的最新版本是 linux-64  v3.98_1.19,并不是最新的包, 而RCRAN 上的最新版本是 v3.98_1.2。因此, 即使用conda 安装了1.19,在安装其它包的时候仍然会提示更新XML,依然会出现上述问题。建议大家采用上述解决方案安装最新版本的XML包。

本文转载自 YAMAHAgb1的个人博客
链接地址:http://blog.sciencenet.cn/blog-773206-1155793.html

R-package XML 安装失败及解决方式的更多相关文章

  1. Sublime Text 无法使用Package Control或插件安装失败的解决方法

    Sublime Text用了一年多了,公司搬家近期突然发现Package Control无法安装新插件了.尽管不影响原有功能的使用.还是要解决它.因为本人用Windows系统,仅仅讨论Windosw下 ...

  2. R 包 rgl 安装失败, 报错 X11 not found but required, configure aborted 及解决方法

    R 包 rgl 安装失败, X11 not found but required, configure aborted * installing *source* package ‘rgl’ ... ...

  3. VS2008安装“Visual Studio Web 创作组件”安装失败的解决方法

    VS2008安装“Visual Studio Web 创作组件”安装失败的解决方法 今天在单位电脑安装VS2008,当安装到“Visual Studio Web 创作组件”时出现错误. 准备手动安装 ...

  4. PHP Manager 安装失败的解决方法, PHP Manager 1.4 for IIS 10,经验证支持windows server 2016版本

    // 另有无需进行修改注册表的安装包,经测试最高支持Windows Server 2016 版本,下载地址如下: https://github.com/EnhWeb/PHPManager/tree/m ...

  5. VS2010在WIN7下安装报错“下列组件安装失败”如何解决

    VS2010在WIN7下安装报错“下列组件安装失败”如何解决 http://www.111cn.net/net/42/75914.htm

  6. Microsoft Visual Studio Web 创作组件安装失败的解决方法

    在网上查一下说是Office2007的问题.我把Office2007卸载了还是不行. 然后用Windows Install Clean Up工具清理,还是不行. 郁闷了.然后在安装包中的下面路径下找到 ...

  7. Android Studio安装更新终极解决方式

    之前写过一篇Android SDK无法更新的博文,其实该方式对Android Studio同样有效,大伙可以下载网盘中分享的小软件,若搜索到通道后提示需要更细,也可以选择更新.参考:http://bl ...

  8. mongodb安装失败与解决方法(附安装教程)

    安装mongodb遇到的一些坑 浪费了大量的时间 在此记录一下   主要是电脑系统win10企业版自带的防火墙  当然还有其他的一些坑 一般的问题在第6步骤都可以解决,本教程的安装步骤不够详细的话  ...

  9. error: Microsoft Visual C++ 14.0 is required(line_profiler模块安装失败的解决办法)

    一.我的安装环境: 1.系统:win10,64位 2.python版本:python3.6.4 二.遇到的问题: 1.cmd黑屏终端下输入命令:pip install line_profiler(安装 ...

随机推荐

  1. bzoj 3643Phi的反函数

    3643: Phi的反函数 Time Limit: 10 Sec  Memory Limit: 64 MBSubmit: 298  Solved: 192[Submit][Status][Discus ...

  2. 判断小端大端(C实现)

    C程序中的大端小端概念可以参见上一篇文章 如何区分小端和大端.本文重点讨论如何用C程序来判断当前系统是大端还是小端. 判断大端小端的程序如下: #include <stdio.h> int ...

  3. MyBatis从入门到精通:update用法、delete用法

    update用法: 1.接口类中添加的方法: int updateById(SysUser sysUser); 2.映射文件中添加的代码: <update id="updateById ...

  4. css3系列之弹性盒子 flex

    弹性盒子(伸缩盒) 注意,本篇会很长,非常长, 因为弹性盒子的知识点比较多 搜索 弹性盒子的属性  ctrl + F   如果觉得图太小, ctrl + +键 设置弹性盒子的属性: display:f ...

  5. MySQL5.7.20源码安装以及pt-query-digest用法示例

    MySQL5.7.20源码安装1.下载解压cd /data/app/mysql5.7wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5 ...

  6. Netty-Pipeline深度解析

    首先我们知道,在NIO网络编程模型中,IO操作直接和channel相关,比如客户端的请求连接,或者向服务端发送数据, 服务端都要从客户端的channel获取这个数据 那么channelPipeline ...

  7. 个人永久性免费-Excel催化剂功能第43波-文本处理类函数增强

    Excel的函数有400多个,真正常用的50多个,而常有的文本处理类函数也不多,不是因为文本类处理简单,而是Excel真的有点挤牙膏式的每个版本更新那么几个小函数,普通用户等得急切,但实际上这些小函数 ...

  8. C4.5和ID3的差别

    C4.5和ID3的差别 决策树分为两大类:分类树和回归树,前者用于分类标签值,后者用于预测连续值,常用算法有ID3.C4.5.CART等. 信息熵 信息量:   信息熵: 信息增益 当计算出各个特征属 ...

  9. [leetcode] 11. Container With Most Water (medium)

    原题链接 以Y坐标长度作为木桶边界,以X坐标差为桶底,找出可装多少水. 思路: 前后遍历. Runtime: 5 ms, faster than 95.28% of Java class Soluti ...

  10. 2019暑假集训 BLO

    题目描述 Byteotia城市有n个 towns m条双向roads. 每条 road 连接 两个不同的 towns ,没有重复的road. 所有towns连通. 输入 输入n<=100000 ...