2013-09-03 3 views
5

Проблемы: C:\>Rcmd.exe INSTALL --build --library=C:/Users/local_aphalo/Documents/R/win-library/3.0 photobiologyR CMD INSTALL --build пакет -> "виньетка отсутствует"

C:\>Rcmd.exe INSTALL --build --library=C:/Users/local_aphalo/Documents/R/win-library/3.0 photobiology_0.2.6.tar.gz

Первая команда (как используются RStudio) строит ZIP-файл, который отсутствует виньетки.

Вторая команда создает ZIP, который содержит виньетки.

Использование R CMD вместо Rcmd.exe не имеет значения. Файл .tar.gz был создан непосредственно перед попыткой создать ZIP-файл из точно таких же исходных файлов из RStudio (который использует фотобиологию сборки Rcmd.exe).

Виньетки кодируются в .Snw-файлах, используя knitr, документацию и NAMESPACE, используют ROxygen2. Проблема возникает во всех пакетах, которые я пытался создать, но они очень похожи друг на друга. Только один из них использует Rcpp.

При установке пакета для использования с RStudio установка с .tar.gz устанавливает виньетки в порядке. Если вы устанавливаете из .zip, независимо от того, установлены ли виньетки или нет, зависит от того, содержат ли они .zip-файлы или нет (что зависит от того, какая из двух команд в верхней части этого сообщения использовалась для создания .zip-файла).

Я использую R 3.0.1, а также попробовал пару исправленных исправлений R 3.0.1 за несколько дней назад. В основном я использую Windows 7 (как 32-разрядную, так и 64-разрядную), я однажды пытался использовать Ubuntu 64bit, и проблема воспроизводима. Я впервые заметил проблему при использовании RStudio (0.97 и 0.98) и разместил сообщение на форуме RStudio, но не получил ответа через пару недель. Я нашел по крайней мере еще одну относительно старую запись об этой проблеме на форуме сайта RStudio, но на нее не ответил. Сегодня я немного расследовал, и проблема явно не связана с RStudio, так как я могу воспроизвести ее через командную строку.

Вопрос: Это особенность? Жук? или мне не хватает только опции в используемой команде?

Конечно, я могу легко обойти проблему в командной строке с помощью файла .tar.gz для создания ZIP-файла, но, как я думаю, предпочтительный способ создания пакета - просто предоставить имя пакета в качестве аргумента.

Спасибо за любые сведения о происхождении этой проблемы.

ответ

3

Я думаю, что это особенность:

  • если вы устанавливаете от источника, виньетки всегда строятся

  • , если вы устанавливаете с бинарной, они не построили, и будут доступны только если они были построены, когда двоичное была сделана

Этот подход означает, что вы можете распространять виньетки в бинарных пакетов для людей, которые не могли бы быть в состоянии б uild их из источника.

+0

Да, имеет смысл. –

+0

Да, это имеет большой смысл. Но я строю двоичный файл, и из вывода на экране пакет, кажется, устанавливается из источника как часть этого процесса, но если источник еще не упакован в .tar.gz, источник устанавливается без включения виньет, даже если они доступны в папке виньет в моем «источнике рабочего пакета» в виде файлов .pdf. Так что я хотел бы знать, если есть способ заставить файлы виньетки быть включенными в .zip-файл, кроме как с помощью .tar.gz для установки. –

+0

@PedroAphalo Как вы строите почтовый индекс? – hadley