Проблема с установкой Pandoc на Ubuntu 14.04LTS для использования с R Markdown
Этот вопрос является следствием моих попыток получить некоторый опыт в создании воспроизводимых отчетов из R Markdown
документы через knitr
а также rmarkdown
Р. пакеты. Пока кажется что .Rmd => HTML
преобразование автоматизировано изнутри RStudio (Knit HTML
кнопка), моя попытка сделать то же самое за пределами RStudio (Rscript -e 'library(rmarkdown); render("knitr-example-slides-1.Rmd")'
) из-за отсутствия, согласно сообщению, отсутствия pandoc
в моей системе. Скорее всего, это неверно, поскольку RStudio каким-то образом удалось выполнить преобразование. Следовательно, это, скорее всего, проблема доступа и / или пути.
Без знания того, где RStudio поддерживает pandoc
и подробности о доступе я решил установить pandoc
себя. К несчастью, sudo apt-get install pandoc
не был очень полезным, из-за того, что текущая версия pandoc
в убунту trusty
репозиторий (14.04LTS) - 1.12.2.1. В соответствии с rmarkdown
сообщение версии 1.12.3 или выше. "Ничего страшного", подумал я и следовал инструкциям по установке pandoc
в случае слишком старой версии в хранилище ( http://johnmacfarlane.net/pandoc/installing.html). Для этого требуется установить платформу Haskell, которая довольно велика, а результаты довольно многословны. Через некоторое время меня наконец-то приветствовало следующее сообщение об ошибке:
[ 6 of 57] Compiling Text.Pandoc.Readers.TeXMath ( src/Text/Pandoc/Readers/TeXMath.hs, dist/build/Text/Pandoc/Readers/TeXMath.o )
src/Text/Pandoc/Readers/TeXMath.hs:30:38:
Ambiguous occurrence `readTeXMath'
It could refer to either `Text.Pandoc.Readers.TeXMath.readTeXMath',
defined at src/Text/Pandoc/Readers/TeXMath.hs:56:1
or `Text.TeXMath.readTeXMath',
imported from `Text.TeXMath' at src/Text/Pandoc/Readers/TeXMath.hs:33:1-19
(and originally defined in `Text.TeXMath.Parser')
Failed to install pandoc-1.12.4.2
cabal: Error: some packages failed to install:
pandoc-1.12.4.2 failed during the building phase. The exception was:
ExitFailure 1
pandoc-citeproc-0.3.1 depends on pandoc-1.12.4.2 which failed to install.
Во-первых, я не уверен, как это исправить. Во-вторых, я очень подозреваю, что должен быть более простой способ получать воспроизводимые отчеты с rmarkdown
а также pandoc
чем это. Ваш совет будет оценен по достоинству!
ОБНОВЛЕНИЕ (см. Комментарии):
Rscript -e 'library(rmarkdown); render("knitr-example-slides-1.Rmd")'
processing file: knitr-example-slides-1.Rmd
|....... | 11%
ordinary text without R code
|.............. | 22%
label: setup (with options)
List of 1
$ include: logi FALSE
Quitting from lines 6-8 (knitr-example-slides-1.Rmd)
Error in eval(expr, envir, enclos) : object 'opts_chunk' not found
Calls: render ... handle -> withCallingHandlers -> withVisible -> eval -> eval
Execution halted
1 ответ
По сути, @daroczig ответил на этот вопрос в своем комментарии выше, поэтому я повторю его здесь, плюс добавлю ответ на соответствующий незначительный вопрос по этой проблеме, появившийся после устранения основной проблемы.
1) "Бинарно скомпилированная версия Pandoc уже поставляется с RStudio, поэтому вы можете просто создать символическую ссылку, чтобы вы могли легко использовать ее вне экосистемы RStudio: https://github.com/rstudio/rmarkdown/blob/master/PANDOC.md#newer-systems-debianubuntufedora";
2) Я исправил ошибку, возникшую после применения вышеуказанного совета (см. Мой комментарий), позвонив opts_chunk()
используя явную ссылку на пакет: knitr::opts_chunk()
Следующие рекомендации приведены здесь: http://rmarkdown.rstudio.com/authoring_migrating_from_v1.html (спасибо @Yihui за указание на этот документ в другом вопросе: перевод исследовательского проекта на установку на основе knitr).