Зависимости R-пакета
Я пытаюсь создать R-пакет, но кажется, что есть некоторые проблемы с зависимостями пакета. Если я запустил код в R, мне нужны пакеты "rgdal" и "rgeos", поэтому для создания пакета из него я:
- Добавлена строка "import (rgdal, rgeos)" в файл NAMESPACE
- Добавлена строка "Зависит: rgeos, rgdal" к файлу DESCRIPTION
Когда я запускаю проверку R CMD (после сборки), я получил сообщение об ошибке:
* checking package dependencies ... ERROR
Benötigte, aber nicht verfügbare Pakete:
'rgeos' 'rgdal'
See the information on DESCRIPTION files in the chapter 'Creating R
packages' of the 'Writing R Extensions' manual.
Немедленная часть ошибки: "Benötigte, aber nicht verfügbare Pakete:" = "Необходимые, но недоступные пакеты".
Я прочитал упомянутое руководство и знаю о вариантах использования импорта, предлагает или улучшает, но я уверен, что зависит от того, какой вариант я должен использовать, потому что в функциях моего кода я используя внешние функции этих двух пакетов.
Что я делаю неправильно?
Ответы
Ответ 1
R думает, что у вас нет пакетов в вашей системе.
Теперь вы, конечно, знаете, что делаете. В чем разница?
Ну, вы, вероятно, их установили в другой каталог, на который не смотрит R CMD check
. Один из способов исправить это описан в разделе 7, озаглавленном "Инструменты" руководства "R Internals" (см. "Написание R-расширений" ) и использует файл ~/.R/checkEnviron
для установки переменных среды, которые будут использоваться во время R CMD check
.
Например, у меня есть
# edd Apr 2003 Allow local install in /usr/local, also add a directory for
# Debian packaged CRAN packages, and finally the default dir
# edd Jul 2007 Now use R_LIBS_SITE, not R_LIBS
R_LIBS_SITE=${R_LIBS_SITE-'/usr/local/lib/R/site-library:'
'/usr/lib/R/site-library:/usr/lib/R/library'}
где я просто сломал одну длинную линию (в середине не было двух апострофов).