安装xml2 R包时报错

Error message when installing xml2 R package

在我的 Windows 机器上更新到 R 4.0.0 后,我无法安装一些软件包,例如 xml2foreignnnet).当我尝试安装时收到此错误消息:

* installing *source* package 'foreign' ...
** package 'foreign' successfully unpacked and MD5 sums checked
** using staged installation
** libs

*** arch - i386
"c:/rtools40/mingw32/bin/"gcc  -I"C:/PROGRA~1/R/R-40~1.0/include" -DNDEBUG          -O2 -Wall  -std=gnu99 -mfpmath=sse -msse2 -mstackrealign -c R_systat.c -o R_systat.o
sh: c:/rtools40/mingw32/bin/gcc: No such file or directory
make: *** [C:/PROGRA~1/R/R-40~1.0/etc/i386/Makeconf:222: R_systat.o] Error 127
ERROR: compilation failed for package 'foreign'
* removing 'C:/R-PKGS/win-library/3.6/foreign'
* restoring previous 'C:/R-PKGS/win-library/3.6/foreign'
Warning in install.packages :
  installation of package ‘foreign’ had non-zero exit status

安装 xml2 包的主要原因是我想使用 tidyverse 包,但是当我尝试 运行 library(tidyverse) 时收到此消息:

Error: package or namespace load failed for ‘tidyverse’:
 package ‘xml2’ was installed before R 4.0.0: please re-install it

所以我想我必须能够解决在我尝试安装 xml2 软件包时出现的问题,因为将来可能会出现其他软件包必须更新的问题。

亲切的问候,安德烈斯

Windows 上的 R 4.0 附带一个新的工具集 rtools40,可以单独安装。该工具集包含用于在 Windows 上安装源代码包的编译器和其他编程工具,而编译器通常已经在 Linux 系统上可用。工具集可以从 CRAN 安装,但通常不需要,如果只安装预编译的 "binary packages"。

如果将来自不同版本 R 的包安装在同一文件夹中,即所谓的 "personal library",默认情况下在 Windows 中,有时会出现额外的混淆:

c:\users\<username>\R\win-library

... 或其他用户指定的文件夹。更新到新的 R 版本后,清理旧的 win-library 是个好主意。确保文件夹不包含有价值的个人数据。