Я хочу установить пакет xlsx на R 2.8.1 на Windows, но я должен использовать старый пакет.tar.gz, когда мне нужно.zip

По причинам, которые здесь слишком длинны для объяснения, я должен использовать R.2.8.1 (к сожалению). Мне нужно установить пакет xlsx. Поскольку я нахожусь на R 2.8.1, около десяти лет, я не могу использовать последнюю версию xlsx, но более старая версия, например, xlsx_0.1.3 от 2010 года, кажется хорошим выбором. Однако предыдущие выпуски в соответствии с политикой R-CRAN доступны только в tar.gz. Это очень прискорбно для меня, потому что я должен использовать RGui на Windows, которая принимает только пакеты.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-Тогда я думаю, что лучшее решение - преобразовать пакет xlsx_0.1.3.tar.gz в совместимый пакет xlsx_0.1.3.zip, собрав его с использованием R.2.8.1, но я не могу его сделать. Вот одна из вещей, которые я пробовал до сих пор. Я распаковал 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

Внутри activ.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'

Спасибо за помощь

1 ответ

Я не могу включить структурированный контент в комментарии. Это действительно комментарий.

Структура исходных пакетов (то, что у вас есть xlsx_0.1.3.tar.gz если вы вытащили его из архивов CRAN) не изменился (сильно) с 2.8.1.

Вам также нужно будет захватить rJava_0.8-3.tar.gz а также xlsxjars_0.2.0.tar.gz из архива как xlsxjars + xlsx полагаться на rJava,

Извлеките каждый из них (поскольку Windows R 2.8.1, похоже, не использует gz-файлы). Они должны сделать rJava, xlsxjars а также xlsx каталоги каждый.

Перейдите в родительский каталог обоих.

Бежать:

R CMD javareconf

R CMD build rJava
R CMD INSTALL rJava_0.8-3.zip  # I believe this will be the name

R CMD build xlsxjars
R CMD INSTALL xlsxjars_0.2.0.zip

R CMD build xlsx
R CMD INSTALL xlsx_0.1.3.zip

и ты должен быть gtg.

Другие вопросы по тегам