由于此处无法解释的原因,我必须使用 R.2.8.1(不幸的是)。我需要在上面安装 xlsx 包。由于我使用的是 R 2.8.1,大约十岁,我不能使用最新版本的 xlsx,但是旧版本,例如 2010 年的 xlsx_0.1.3 似乎是一个不错的选择。但是,每个 R-CRAN 策略的先前版本仅在 tar.gz 中可用。这对我来说非常不幸,因为我必须在 Windows 上使用 RGui,它只接受安装中的 .Zip 包。因此,我徒劳地尝试了以下内容:
1-我尝试使用 Rcmd,但收到以下错误消息:
C:\Program Files (x86)\R\R-2.8.1\bin>Rcmd INSTALL C:\Users\username\Downloads\xlsx_0.1.3.tar.gz
Can't use 'defined(@array)' (Maybe you should just omit the defined()?) at C:\PROGRA~2\R\R-28~1.1/bin/INSTALL line 42.
所以我放弃了这个。
2-那么我认为最好的解决方案是通过使用 R.2.8.1 构建将包 xlsx_0.1.3.tar.gz 转换为兼容的 xlsx_0.1.3.zip 包,但我做不到。这是我迄今为止尝试过的事情之一。我已经解压缩了 xlsx_0.1.3.tar.gz 并按以下方式组织它,这让我走得最远:
Documents\xlsx
Documents\xlsx\activate.bat
Documents\xlsx\build_xlsx.bat
Documents\xlsx\R
Documents\xlsx\R\inst
Documents\xlsx\R\man
Documents\xlsx\R\other
Documents\xlsx\R\R
Documents\xlsx\R\DESCRIPTION
Documents\xlsx\R\NAMESPACE
Documents\xlsx\R\NEWS
Documents\xlsx\R\WISHLIST
在 activate.bat 中,我写道:
SET TMP=C:\Users\username\Documents\TOTO\xlsx\tmp
SET TEMP=%TMP%
SET RTOOLSPATH=C:\DEV_307\toto\Rtools
SET RPATH=C:\DEV\toto\R\R-2.8.1
SET PATH=%RTOOLSPATH%\bin;%RTOOLSPATH%\MinGW\bin;%RPATH%\bin;%PATH%
在 build_xlsx.bat 中,我写道:
R CMD BUILD R
R CMD check --no-examples --no-tests R
R CMD build --docs=normal --binary R
然后我仍然得到:
C:\Users\username\Documents\TOTO\xlsx>R CMD BUILD R
* checking for file 'R/DESCRIPTION' ... OK
* preparing 'R':
* checking DESCRIPTION meta-information ... OK
* installing the package to re-build vignettes
Can't use 'defined(@array)' (Maybe you should just omit the defined()?) at C:\DEV\toto\R\R-2.8.1/bin/INSTALL line 42.
ERROR
Installation failed.
Removing 'C:/Users/username/Documents/Rinst1210839349'
谢谢您的帮助