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

По причинам, которые здесь слишком длинны для объяснения, я должен использовать 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 Ответ

0 голосов
/ 19 октября 2018

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

Структура исходных пакетов (то, что у вас есть с 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.

...