【问题标题】:RStudio Sweave error -> exit code -1073740791RStudio Sweave 错误 -> 退出代码 -1073740791
【发布时间】:2021-03-02 17:11:41
【问题描述】:

由于此错误消息,我在 RStudio 中运行我的 .rnw(我正在运行 Sweave)文件时遇到问题:

Writing to file test.tex
Processing code chunks with options ...

You can now run (pdf)latex on 'test.tex'
Running pdflatex.exe on test.tex...failed
Error running C:/PROGRA~1/MiKTeX/miktex/bin/x64/pdflatex.exe (exit code -1073740791)

我有 MiKTeX 的默认安装,从我的电脑上看到的我下载了 21.2 版。我一直在检查更新,没有任何新的。我使用新安装的 Windows 10 作为操作系统,并带有新安装的 R、RStudio 和 MiKTeX。所以应该不会干扰其他 MiKTeX 版本。

当我在 RStudio 中使用以下代码检查 MiKTeX 的路径时: Sys.which("pdflatex") 然后我得到这个回复:

                                              pdflatex 
"C:\\PROGRA~1\\MiKTeX\\miktex\\bin\\x64\\pdflatex.exe" 

我也尝试在工具/全局选项中启用 shell 转义命令,但这也不起作用。 我不知道这里可能有什么问题。你知道如何解决这个问题吗?

感谢您的时间和精力。

【问题讨论】:

标签: r rstudio pdflatex sweave miktex


【解决方案1】:

我在更新 MikTex 和 RStudio 后也遇到了这个问题。

pdflatex 日志显示 RStudio 首先调用 pdflatex --version 然后发生错误。我的结论是 RStudio 不喜欢这个答案。

编辑 2:

到目前为止,这似乎是正确的,我已将 MikTex 和 RStudio 更新到最新版本。

我猜想安装较旧版本的 MikTex 可以工作,因为较旧的 pdflatex 返回 RStudio 知道如何处理的版本消息。

我的解决办法是这样的:

  1. 在您的 R 目录中创建一个文件 pdflatex.cmd
  2. 在同一目录中创建文件 rs.cmd(或您想要的任何其他名称)

这些文件是:

--------- pdflatex.cmd ------------

@echo off
if %1 == --version goto version

pdflatex.exe %1 %2 %3 %4 %5 %6 %7 %8 %9    
goto :eof

:version
echo MiKTeX-pdfTeX 4.8 (MiKTeX 21.10)

----------- pdflatex.cmd -------------

返回的版本是“pdflatex --version”输出的第一行

----------- rs.cmd -------------

@echo off

rem Start RStudio with specific environment variables    
set RSTUDIO_PDFLATEX=pdflatex.cmd    
set PATH=%PATH%;"C:\Program Files\RStudio\bin\";..
start /D "C:\Program Files\RStudio\" rstudio.exe

----------- rs.cmd -------------

要使用它,请使用 rs 命令启动 RStudio。

现在,单击“编译 PDF”按钮成功运行并编译 pdf 并在查看器中打开它。

有一些限制:

  • 之前的项目环境没有完全恢复;您可能需要重新打开一些文件。
  • pdflatex 命令的输出未被 RStudio 捕获。如果您有乳胶错误,您可能需要在命令外壳中运行 pdflatex 来检查它们。

当然,真正的答案是让 RStudio 正确处理“--version”响应,但现在这对我有用。

丰富

【讨论】:

    【解决方案2】:

    我遇到了同样的问题,我想出的唯一解决方案是卸载 MikTex 并安装 TinyTex。

    tinytex::install_tinytex()
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-07-02
      • 2017-11-20
      • 2018-11-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-12-04
      • 2018-09-01
      相关资源
      最近更新 更多