1

在我的 Windows 机器上更新到 R 4.0.0 后,我无法安装某些软件包,例如xml2(和 也是如此foreignnnet。当我尝试安装时,我收到此错误消息:

* 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包时出现的问题,因为将来可能会出现其他包必须更新时。

亲切的问候,安德烈斯

4

1 回答 1

2

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

如果来自不同版本的 R 的软件包默认安装在 Windows 中的同一个文件夹(即所谓的“个人库”)中,有时可能会出现额外的混淆:

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

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

于 2020-05-02T19:58:42.670 回答