Это решение работает на OSX Yosemite 10.10.5 на R версии 3.3.2 (2016-10-31).

аюсь скомпилировать скрипт knitr по таймеру, используяКонтроль запуска (графический интерфейс launchd для планирования cron-подобных заданий в OSX).

У меня есть скрипт dispatcher.R, который делает это:

#!/Library/Frameworks/R.framework/Resources/Rscript
library("knitr")
setwd("~/somedirectory")
knit2pdf("my_script.Rnw", output= "my_script.tex")

Когда я запускаю это в интерактивном режиме из RStudio, my_script.Rnw прекрасно работает. Я получаю желаемый вывод PDF. Однако, когда launchd запускает скрипт dispatcher.R, я получаю эту ошибку:

Ошибка в texi2dvi (file = file, pdf = TRUE, clean = clean, quiet = quiet,: не удалось запустить texi2dvi на my_script.tex. Выполнение остановлено

Файл .tex генерируется, но затем не компилируется. Я бы сказал, что это была проблема с моим путем установки LaTeX, но так как он работает с использованиемknit2pdf() Я не уверен. В чем может быть проблема?

Все еще работаю над этим. Обновления:

Файл .log не создается сknit2pdf() через LaunchControl, но я получаю файл .tex и папку / figure.

Я обновил MacTex, а также попробовал минимальный пример пустого документа, и я получил ту же ошибку о texi2dvi.

Когда я бегуknit2pdf("my_script.Rnw", output = "my_script.tex") используя LaunchControl изатем вернитесь в RStudio и бегитеtexi2dvi("my_script.tex", pdf = TRUE)тогда я получу желаемый результат.Проблема воспроизводится на Сьерра и ЙосемитиНа Сьерре есть дополнительная ошибка по поводуIn my_script_latex_pkg("framed", system.file("misc", "framed.sty", package = "knitr")) : unable to find LaTeX package 'framed'; will use a copy from knitrЯ старалсяSys.setenv(PATH = paste(Sys.getenv("PATH"),"/usr/texbin",sep=":")) и это не помогло.Бег$ Rscript dispatcher.R из командной строки работает просто отлично. PDF компилируется.Запуск скрипта bash сRscript dispatcher.Rв LaunchControl делаетне Работа; такая же ошибка про texi2dvi.

Ответы на вопрос(1)

Ваш ответ на вопрос