诊断R包构建错误:pdfLatex不可用

时间:2013-01-15 08:31:39

标签: r packaging pdflatex

我正在尝试在R中构建一个包。我制作了骨架,然后运行命令R CMD check package1。我收到了here描述的错误。 我按照解决方案步骤,结果是:

  1. devtools不适用于R 2.15.1

  2. 打入R CMD Rd2pdf package1

  3. Hmm.. Looks like a package
    Converting Rd files to LaTeX
    Creating pdf output from LaTeX
    Error in texi2dvi(file=file, pdf=true, clean=clean, quiet=quiet, : pdflatex not available
    Error in running tools::texi2pdf
    
    1. 我查了this等其他内容,安装了完整的tex live& amp; MIKTEX。出现了相同的错误消息。
    2. 我导航到pdflatex所在的目录,并尝试从那里运行命令。没有帮助。
    3. 我在这里缺少什么,或者有解决方法吗?或许,有没有办法在包创建过程中抑制pdf生成?

      更新:当我在LINUX(CentOS)中尝试它时,没有抛出此错误。

5 个答案:

答案 0 :(得分:8)

你当然可以抑制PDF生成。

R CMD check package --no-manual

来自here

答案 1 :(得分:3)

虽然您已在Windows下安装了MikTeX,但这并不适用于R.您需要将乳胶可执行文件的位置添加到PATH环境变量中。如何做到这一点完全取决于您的Windows版本。例如,this link描述了如何为Windows 7执行此操作。搜索change environment variables (windows 7|windows xp|windows 95)将告诉您如何更改环境变量。

答案 2 :(得分:1)

只需按照此视频的说明在Windows上安装MikTex:

https://www.youtube.com/watch?v=k-xSGZ-RLBU

我也有类似的pdfLatex Not Available问题。以这种方式安装MikTex后,错误如“pandoc.exe:pdflatex not found。pdflatex for pdf output。错误:pandoc文档转换失败,错误41”可以在使用knitr创建pdf时解决。

安装文件可以从以下网址下载:

http://mirrors.ctan.org/systems/win32/protext/ProTeXt-3.1.5-033015.exe

答案 3 :(得分:0)

第1步:从http://miktex.org/2.9/setup

下载并安装MiKTeX

第2步:运行

Sys.getenv("PATH") 

在R工作室 此命令返回Rstudio尝试查找pdflatex.exe的路径 在Windows(64位)中它应该返回C:\ Program Files \ MiKTeX 2.9 \ miktex \ bin \ x64 \ pdflatex.exe 如果pdflatex.exe不在此位置,则Rstudio会提供此错误代码41。

步骤3:设置此路径变量:

Sys.setenv(PATH=paste(Sys.getenv("PATH"),"C:/Program Files/MiKTeX 2.9/miktex/bin/x64/",sep=";"))

答案 4 :(得分:0)

我最近遇到了同样的问题。对我来说,有效的方法是安装texlive-fonts-extra。这适用于基于Docker R的映像以及Ubuntu。

在CentOS中,软件包系统不同,您可能需要安装更多与乳胶相关的软件包(example here)。