Ошибка RStudio Sweave -> код выхода -1073740791

У меня проблема с запуском файлов .rnw (я запускаю Sweave) в RStudio из-за этого сообщения об ошибке:

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.

Когда я проверяю путь к моему MiKTeX в RStudio с помощью этого кода: Sys.which("pdflatex"), я получаю такой ответ:

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

Я также пытался включить команды escape-оболочки в Tools/Global Options, но это тоже не сработало. Я понятия не имею, что здесь может быть не так. У вас есть идеи, как решить эту проблему?

Спасибо за ваше время и усилия.


person Gregor G.    schedule 02.03.2021    source источник
comment
@StackMan stackoverflow.com/users/15330028/stackman говорит: у меня точно такая же проблема, за исключением Win2019. Я пробовал множество вещей (как и почти все здесь tex.stackexchange.com/questions/267299/ ), но без изменений. Я думаю, что в нем отсутствуют некоторые пакеты. Но какие? Если я узнаю, я дам вам знать. Если кто-то еще знает, я знаю, что буду признателен за ответ.   -  person Ben Bolker    schedule 06.03.2021


Ответы (2)


У меня тоже была эта проблема после обновления MikTex и RStudio.

Журнал pdflatex показал, что RStudio сначала вызывает pdflatex --version, а затем возникает ошибка. Я пришел к выводу, что RStudio не понравился ответ.

Редактировать:

Пока это кажется правильным. Однако мое решение ниже не работает. Это скрывает ошибку, и я просматривал предыдущую версию скомпилированного pdf.

Я предполагаю, что установка более старой версии MikTex работает, потому что более старый pdflatex возвращает сообщение о версии, с которым RStudio знает, как работать.

Так что не обращайте внимания на все остальное...

Мое решение, уродливый взлом, таково:

  1. Переименуйте pdflatex.exe. Я переименовал его в pdflatexxx.exe
  2. В том же каталоге я создал pdflatex.cmd:

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

@эхо выключено

перехват rem pdflatex.

если %1 == --version перейти к версии

pdflatexxx %1 %2 %3 %4 %5 %6 %7 %8 %9

перейти к концу

:вер

эхо v3.4

:конец

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

Версия 3.4 только что составлена. Я понятия не имею, что на самом деле ищет RStudio. Теперь нажатие кнопки «Скомпилировать PDF» успешно запускается, компилирует PDF и открывает его в средстве просмотра.

Реальный ответ, конечно, заключается в том, чтобы RStudio правильно обрабатывал ответ --version, но теперь это работает для меня.

Богатый

person Rich    schedule 29.06.2021

У меня была та же проблема, и единственным решением, которое я придумал, было удаление MikTex и установка TinyTex.

tinytex::install_tinytex()
person icam    schedule 03.05.2021