当我使用渲染{rmarkdown}从我的Mac上的.Rmd文件生成pdf文件时,会显示一条错误消息
pandoc: pdflatex not found. pdflatex is needed for pdf output.
Error: pandoc document conversion failed
但是当我用
检查时pdflatex -v
我得到了
pdfTeX 3.1415926-2.4-1.40.13 (TeX Live 2012)
kpathsea version 6.1.0
Copyright 2012 Peter Breitenlohner (eTeX)/Han The Thanh (pdfTeX).
There is NO warranty. Redistribution of this software is
covered by the terms of both the pdfTeX copyright and
the Lesser GNU General Public License.
For more information about these matters, see the file
named COPYING and the pdfTeX source.
Primary author of pdfTeX: Peter Breitenlohner (eTeX)/Han The Thanh (pdfTeX).
Compiled with libpng 1.5.10; using libpng 1.5.10
Compiled with zlib 1.2.7; using zlib 1.2.7
Compiled with xpdf version 3.03
pdflatex安装在我的机器上。
任何人都可以帮忙告诉我如何告诉R在哪里找到pdflatex?
非常感谢!
答案 0 :(得分:31)
This answer on TexExchange might help
我升级到OS X Mavericks后发现我遇到pdflatex
“丢失”的问题(例如,在检查RStudio中的包构建时,我收到了error tools::texi2pdf pdflatex missing
消息)。
检查/usr/texbin
是否存在
在终端:
cd /usr/texbin
如果“没有此类文件或目录”,则需要创建指向安装的texbin的符号链接。我在/Library/TeX/Distributions/.DefaultTeX/Contents/Programs/texbin
在终端:
ln -s /Library/TeX/Distributions/.DefaultTeX/Contents/Programs/texbin /usr/texbin
在终端中,检查echo $PATH
的结果。确保/usr/texbin
存在。如果不存在,则需要将/usr/texbin
添加到PATH
变量中。
如果您发现自己不得不使用PATH
变量,安装最新版本的MacTex可能是更好的解决方案。
更新:OS X 10.11 El Capitan不再允许写入/usr
,因此最新版本的MacTeX(2015)现在会将链接写入/Library/TeX/texbin
而不是{{ 1}}在这个系统上。
答案 1 :(得分:31)
对于使用ubuntu而被困在这里的人来说,更好的选择(因为它的大小是1/5)是使用:
sudo apt-get install texlive-latex-base
答案 2 :(得分:17)
对于那些使用Dunk的答案(对于使用UBUNTU的人),如果出现Font <font> at <size> not loadable: Metric (TFM) file not found.
错误,您还需要:
sudo apt-get install texlive-fonts-recommended texlive-latex-recommended
遗憾的是,这大大扩展了texlive安装的大小,但它仍然是texlive-latex-extra
安装大小的一半。
答案 3 :(得分:7)
对于那些滞留在这里的人,因为同样的错误出现在他们的 Linux 发行版中。获取pdflatex例如通过安装Ubuntu
sudo apt-get install texlive-latex-extra
它太多的软件,但需要例如knitr(rmarkdown-pdf-compilation)
答案 4 :(得分:4)
如果您还没有安装任何Latex内容,这可能会有所帮助。
环境:macOS Sierra
brew cask install basictex
(env) jluc@texbin$ pwd
/Library/TeX/texbin
(env) jluc@texbin$ ls | grep pdfla
lrwxr-xr-x 1 user wheel 6 13 Mar 10:36 pdflatex -> pdftex
(env) jluc@texbin$ ls /Library/TeX/texbin/pdflatex
lrwxr-xr-x 1 user wheel 6 13 Mar 10:36 /Library/TeX/texbin/pdflatex -> pdftex
/ Library / TeX / texbin / pdflatex 是我们需要的,您不能参考 pdftex 符号链接和/或使用realpath
因为pandoc
特别希望看到pdflatex
pandoc myfile.md --to=pdf -t latex -o myfile.pdf --latex-engine=/Library/TeX/texbin/pdflatex
答案 5 :(得分:0)
我遇到了类似的问题,因为我无法编织pdf文件,无法通过使用控制台中的这些命令安装和运行tinitex软件包来解决它-而不是终端
enter code here
install.packages(“ tinytex”)
tinytex :: install_tinytex()
答案 6 :(得分:0)
截至2020年(MacOS Catalina)JL Peyret的答案是最适用的。应该稍作更新,因为不建议使用Pandoc中的--latex-engine
选项,而推荐使用新的--pdf-engine
选项
$ brew cask install basictex
$ pandoc myfile.md --to=pdf -t latex -o myfile.pdf --pdf-engine=/Library/TeX/texbin/pdflatex