为什么knitr无法找到framed.sty或kpsewhich?

Mai*_*ura 8 latex r knitr

knit('test2.rnw')


processing file: test2.rnw
  |>>>>>>>>>>>>>                                                    |  20%
  |>>>>>>>>>>>>>>>>>>>>>>>>>>                                       |  40%
label: setup (with options) 
List of 2
 $ include: logi FALSE
 $ cache  : logi FALSE

sh: kpsewhich: command not found
  |>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>                          |  60%
  |>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>             |  80%
  |>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>| 100%
  ordinary text without R code


output file: /Users/xxx/Desktop/R_meetup/documentation/test2.tex

Warning message:
In test_latex_pkg("framed", system.file("misc", "framed.sty", package = "knitr")) :
  unable to find LaTeX package 'framed'; will use a copy from knitr
 >
Run Code Online (Sandbox Code Playgroud)

我在OSX Lion 10.7.3上

kpsewhich的路径:

   $ which kpsewhich
    /usr/texbin/kpsewhich


$ which pdflatex
/usr/texbin/pdflatex
Run Code Online (Sandbox Code Playgroud)

这两个路径都在我.bash_profilehome目录中.我的Tex安装中有框架包.

PATH=$PATH:/usr/texbin/pdflatex
PATH=$PATH:/usr/texbin/kpsewhich
export PATH
Run Code Online (Sandbox Code Playgroud)

将此添加到我.rprofile修复它:

Sys.setenv("PATH" = paste(Sys.getenv("PATH"),"/usr/texbin",sep=":"))

Yih*_*Xie 3

仅供参考,如果 Mac OS 尚未knitr包含/tex/texbin在.PATHPATH