在Ubuntu 14.04LTS上安装Pandoc时出现问题,无法与R Markdown一起使用

时间:2014-07-21 10:42:54

标签: r knitr pandoc r-markdown reproducible-research

这个问题是我试图通过R Markdownknitr R套件从rmarkdown文档获得创建可重现报告的经验的必然结果。虽然似乎.Rmd => HTML转换是从RStudio(Knit HTML按钮)内自动完成的,但我在RStudio(Rscript -e 'library(rmarkdown); render("knitr-example-slides-1.Rmd")')之外做同样的尝试失败了,因为根据消息,缺乏pandoc在我的系统上。这很可能是错误的,因为RStudio以某种方式设法执行转换。因此,它很可能是访问和/或路径问题

如果不了解RStudio维护pandoc的位置以及有关访问权限的详细信息,我自己决定安装 pandoc。不幸的是,由于Ubuntu的sudo apt-get install pandoc存储库(14.04LTS)中当前版本的pandoc为1.12.2.1,因此trusty并没有太大帮助。根据{{​​1}}的消息,需要1.12.3或更高版本。 "并不是什么大不了的事情",我想过,如果存储库中的版本太旧(http://johnmacfarlane.net/pandoc/installing.html),请按照安装rmarkdown的说明进行操作。这需要安装 Haskell平台,它非常大,输出相当冗长。过了一段时间,我终于遇到了以下失败消息

pandoc

首先,我不确定如何修复它。其次,我非常怀疑应该有一种更简单的方法来享受使用[ 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

1 个答案:

答案 0 :(得分:6)

基本上,@ 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在另一个问题上向我指出了这个文件:Transitioning research project to knitr-based setup)。