问题
When I use the render{rmarkdown} to produce pdf file from .Rmd file on my Mac, an error message says
pandoc: pdflatex not found. pdflatex is needed for pdf output.
Error: pandoc document conversion failed 
However when I check with
pdflatex -v
I got
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
The pdflatex is installed in my machine.
Can anyone help to tell how can I tell R where to find the pdflatex?
Many thanks!
回答1:
This answer on TexExchange might help.
I found I was having issues with pdflatex "missing" after I upgraded to OS X Mavericks (e.g. when checking package builds in RStudio I was getting an error tools::texi2pdf pdflatex missing message).
- Check that - /usr/texbinexists.
 In terminal:- cd /usr/texbin
- If "No such file or directory" then you will need to create a symbolic link to your installation's texbin. Mine was in - /Library/TeX/Distributions/.DefaultTeX/Contents/Programs/texbin
 In terminal:- ln -s /Library/TeX/Distributions/.DefaultTeX/Contents/Programs/texbin /usr/texbin
- In terminal, check the result of - echo $PATH. Make sure that- /usr/texbinis present. If it isn't present, then you need to add- /usr/texbinto your- PATHvariable.
If you find yourself having to mess with the PATH variable, installing the latest version of MacTex might be a better solution.
UPDATE: OS X 10.11 El Capitan no longer allows writes to /usr so the latest version of MacTeX (2015) now writes a link to /Library/TeX/texbin instead of /usr/texbin on this system.
回答2:
For people using ubuntu who get stranded here a better option (because it is 1/5 the size) is to use:
sudo apt-get install texlive-latex-base
Which I found via https://tex.stackexchange.com/a/128309
回答3:
For those using Dunk's answer(For people using UBUNTU) who get a Font <font> at <size> not loadable: Metric (TFM) file not found. error, you also need:
sudo apt-get install texlive-fonts-recommended texlive-latex-recommended
This does unfortunately expand the size of the texlive install considerably, but it is still about half the size of a texlive-latex-extra install.
回答4:
For people that get stranded here because the same error is showing up in their Linux distribution. Get pdflatex in e.g. Ubuntu by installing
sudo apt-get install texlive-latex-extra
its too much software, but needed for example by knitr (rmarkdown-pdf-compilation)
回答5:
This might help a bit, in case you don't have any Latex stuff installed yet.
env: macOS Sierra
- from https://tex.stackexchange.com/questions/307483/setting-up-basictex-homebrew
brew cask install basictex
- Now you need to figure out where pdflatex is hiding...
(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 is what we need, you can't refer to the pdftex symlink and/or use realpath because pandoc specifically wants to see pdflatex
- update your command line to point to the appropriate file.
pandoc myfile.md  --to=pdf -t latex -o myfile.pdf --latex-engine=/Library/TeX/texbin/pdflatex
来源:https://stackoverflow.com/questions/22081991/rmarkdown-pandoc-pdflatex-not-found