由于此错误消息,我在 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,从我在 PC 上看到的内容来看,我下载了 21.2 版。我一直在检查更新,没有任何新的。我使用新安装的 Windows 10 作为操作系统和新安装的 R、RStudio 和 MiKTeX。所以不应该干扰另一个 MiKTeX 版本。
当我使用以下代码在 RStudio 中检查 MiKTeX 的路径时:
Sys.which("pdflatex")
然后我得到这个回复:
pdflatex
"C:\\PROGRA~1\\MiKTeX\\miktex\\bin\\x64\\pdflatex.exe"
我也尝试在工具/全局选项中启用 shell 转义命令,但这也不起作用。 我不知道这里有什么问题。你知道如何解决这个问题吗?
感谢您的时间和努力。
答案 0 :(得分:1)
我遇到了同样的问题,我想出的唯一解决方案是卸载 MikTex 并安装 TinyTex。
tinytex::install_tinytex()
答案 1 :(得分:1)
我在更新 MikTex 和 RStudio 后也遇到了这个问题。
pdflatex 日志显示 RStudio 首先调用 pdflatex --version 然后发生错误。我得出的结论是 RStudio 不喜欢这个答案。
编辑:
到目前为止,这似乎是正确的。但是,我下面的解决方案不起作用。它隐藏了错误,我正在查看已编译 pdf 的先前版本。
我猜想安装旧版本的 MikTex 是可行的,因为旧的 pdflatex 会返回 RStudio 知道如何处理的版本消息。
所以忽略剩下的……
我的解决方案,一个丑陋的黑客,是这样的:
---------- pdflatex.cmd -----------
@echo 关闭
rem pdflatex 拦截。
如果 "%1" == "--version" 转到版本
pdflatexxx %1 %2 %3 %4 %5 %6 %7 %8 %9
转到结尾
:ver
echo v3.4
:结束
----------- pdflatex.cmd -------------
v3.4 刚刚发布。我不知道 RStudio 实际上在寻找什么。 现在,单击“编译 PDF”成功运行并编译 pdf 并在查看器中打开。
当然,真正的答案是让 RStudio 正确处理“--version”响应,但这现在对我有用。
丰富