简体   繁体   English

无法在R / RStudio中安装XML包

[英]Cannot install XML package in R/RStudio

[Environment: macOS 10.12.6, RStudio 1.1.383, R 3.4.2 (via homebrew)] [环境:macOS 10.12.6,RStudio 1.1.383,R 3.4.2(通过自制软件)]

Please note this is not a duplicate of this question - solutions there do not work for me. 请注意,这不是 这个问题的重复 - 那里的解决方案对我不起作用。

I am getting install errors when I attempt to install the XML package in RStudio: 当我尝试在RStudio中安装XML包时,我收到安装错误:

> install.packages("XML")
Installing package into ‘/usr/local/lib/R/3.4/site-library’
(as ‘lib’ is unspecified)
trying URL 'https://cran.rstudio.com/src/contrib/XML_3.98-1.9.tar.gz'
Content type 'application/x-gzip' length 1599437 bytes (1.5 MB)
==================================================
downloaded 1.5 MB

* installing *source* package ‘XML’ ...
** package ‘XML’ successfully unpacked and MD5 sums checked
checking for gcc... gcc
checking for C compiler default output file name... a.out
checking whether the C compiler works... yes
checking whether we are cross compiling... no
checking 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/bin/sed
checking for pkg-config... /usr/local/bin/pkg-config
checking for xml2-config... /usr/bin/xml2-config
USE_XML2 = yes
SED_EXTENDED_ARG: -E
Minor 9, Patch 4 for 2.9.4
Located parser file -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/usr/include/libxml2/parser.h
Checking for 1.8:  -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/usr/include/libxml2
Using libxml2.*
checking for gzopen in -lz... yes
checking for xmlParseFile in -lxml2... no
checking for xmlParseFile in -lxml... no
configure: error: "libxml not found"
ERROR: configuration failed for package ‘XML’
* removing ‘/usr/local/lib/R/3.4/site-library/XML’

OK - so I installed libxml2 (2.9.7) via homebrew and force-linked: 好的 - 所以我通过homebrew和force-linked安装了libxml2(2.9.7):

>brew install libxml2
>brew link libxml2 --force

and I added this code to ~/.Renviron : 我将此代码添加到~/.Renviron

LIBXML_INCDIR=/usr/local/opt/libxml2
LIBXML_LIBDIR=/usr/local/opt/libxml2
PKG_CONFIG_PATH=/usr/local/opt/libxml2/lib/pkgconfig
LDFLAGS=-L/usr/local/opt/libxml2/lib
CPPFLAGS=-I/usr/local/opt/libxml2/include

I quit & restart RStudio; 我退出并重启RStudio; try again: 再试一次:

> install.packages("XML")
Installing package into ‘/usr/local/lib/R/3.4/site-library’
(as ‘lib’ is unspecified)
trying URL 'https://cran.rstudio.com/src/contrib/XML_3.98-1.9.tar.gz'
Content type 'application/x-gzip' length 1599437 bytes (1.5 MB)
==================================================
downloaded 1.5 MB

* installing *source* package ‘XML’ ...
** package ‘XML’ successfully unpacked and MD5 sums checked
checking for gcc... gcc
checking for C compiler default output file name... a.out
checking whether the C compiler works... yes
checking whether we are cross compiling... no
checking 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/bin/sed
checking for pkg-config... /usr/local/bin/pkg-config
Checking directory of LIBXML_INCDIR
You specified LIBXML_INCDIR, but we couldn't find parser.h
Please specify it correctly and re-run the INSTALL'ation.
ERROR: configuration failed for package ‘XML’
* removing ‘/usr/local/lib/R/3.4/site-library/XML’

parser.h does exist at /usr/local/opt/libxml2/include/libxml2/libxml/parser.h (placed there by brew), and I even symlinked it to /usr/local/opt/libxml2/include/parser.h , but to no avail. parser.h确实存在于/usr/local/opt/libxml2/include/libxml2/libxml/parser.h (由brew放置),我甚至将它parser.h链接到/usr/local/opt/libxml2/include/parser.h ,但无济于事。

So I pretty much can't figure out how to get RStudio to recognize both the lib libxml2 and parser.h . 所以我几乎无法弄清楚如何让RStudio识别lib libxml2parser.h

RStudio Environment: RStudio环境:

> Sys.getenv()
__CF_USER_TEXT_ENCODING    0x535:0x0:0x0
Apple_PubSub_Socket_Render
                           /private/tmp/com.apple.launchd.oqvtmxMkmV/Render
CLICOLOR_FORCE             1
CPPFLAGS                   -I/usr/local/opt/libxml2/include
DISPLAY                    /private/tmp/com.apple.launchd.z0UbJdCqkr/org.macosforge.xquartz:0
DYLD_FALLBACK_LIBRARY_PATH
                           /usr/local/Cellar/r/3.4.2/lib/R/lib:/Users/conrad/lib:/usr/local/lib:/usr/lib:::/lib
EDITOR                     vi
GIT_ASKPASS                rpostback-askpass
HOME                       /Users/conrad
LANG                       en_US.UTF-8
LC_CTYPE                   en_US.UTF-8
LDFLAGS                    -L/usr/local/opt/libxml2/lib
LIBXML_INCDIR              /usr/local/opt/libxml2
LIBXML_LIBDIR              /usr/local/opt/libxml2
LN_S                       ln -s
LOGNAME                    conrad
MAKE                       make
PAGER                      /usr/bin/less
PATH                       /usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/opt/X11/bin:/usr/local/MacGPG2/bin:/Library/Frameworks/Mono.framework/Versions/Current/Commands
PKG_CONFIG_PATH            /usr/local/opt/libxml2/lib/pkgconfig
R_BROWSER                  /usr/bin/open
R_BZIPCMD                  /usr/bin/bzip2
R_DOC_DIR                  /usr/local/Cellar/r/3.4.2/lib/R/doc
R_GZIPCMD                  /usr/bin/gzip
R_HOME                     /usr/local/Cellar/r/3.4.2/lib/R
R_INCLUDE_DIR              /usr/local/Cellar/r/3.4.2/lib/R/include
R_LIBS_SITE                
R_LIBS_USER                ~/Library/R/3.4/library
R_PAPERSIZE                a4
R_PDFVIEWER                /usr/bin/open
R_PLATFORM                 x86_64-apple-darwin16.7.0
R_PRINTCMD                 lpr
R_RD4PDF                   times,inconsolata,hyper
R_SESSION_TMPDIR           /var/folders/dr/ldgx2z697jv6b0b281qjcsw400019n/T//RtmpvNqwQA
R_SHARE_DIR                /usr/local/Cellar/r/3.4.2/lib/R/share
R_SYSTEM_ABI               osx,gcc,gxx,gfortran,?
R_TEXI2DVICMD              /usr/bin/texi2dvi
R_UNZIPCMD                 /usr/bin/unzip
R_ZIPCMD                   /usr/bin/zip
RMARKDOWN_MATHJAX_PATH     /Applications/RStudio.app/Contents/Resources/resources/mathjax-26
RS_RPOSTBACK_PATH          /Applications/RStudio.app/Contents/MacOS/rpostback
RS_SHARED_SECRET           <redacted>
RSTUDIO                    1
RSTUDIO_CONSOLE_COLOR      256
RSTUDIO_CONSOLE_WIDTH      91
RSTUDIO_PANDOC             /Applications/RStudio.app/Contents/MacOS/pandoc
RSTUDIO_SESSION_PORT       9090
RSTUDIO_USER_IDENTITY      conrad
RSTUDIO_WINUTILS           bin/winutils
SED                        /usr/bin/sed
SHELL                      /bin/tcsh
SSH_ASKPASS                rpostback-askpass
SSH_AUTH_SOCK              /private/tmp/com.apple.launchd.wBdDUnzsja/Listeners
TAR                        /usr/bin/tar
TERM                       xterm-256color
TMPDIR                     /var/folders/dr/ldgx2z697jv6b0b281qjcsw400019n/T/
USER                       conrad
XPC_FLAGS                  0x0
XPC_SERVICE_NAME           0

(Naturally, I discovered the answer immediately after posting. :) (当然,我在发布后立即发现答案。:)

The solution is to remove 解决方案是删除

LIBXML_INCDIR=/usr/local/opt/libxml2
LIBXML_LIBDIR=/usr/local/opt/libxml2

from ~/.Renviron and add 来自~/.Renviron并添加

XML_CONFIG=/usr/local/bin/xml2-config

this allowed the XML package to compile and install. 这允许编译和安装XML包。

please set PKG_CONFIG_PATH, it should contain a libxml-2.0.pc file. 请设置PKG_CONFIG_PATH,它应该包含一个libxml-2.0.pc文件。 For me, I installed libxml2 by brew, and this code works: 对我来说,我通过brew安装了libxml2,这个代码有效:

export PKG_CONFIG_PATH="/usr/local/Cellar/libxml2/2.9.8/lib/pkgconfig"

I had this problem for a long time. 我有这个问题很长一段时间了。 only in RStudio. 只在RStudio。 Install the package on R and Library it. 在R和Library上安装软件包。 Go to RStudio and require the package. 转到RStudio并要求包。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM