将 TeX 路径添加到 R Studio - Ubuntu

Add TeX path to R Studio - Ubuntu

我遇到了与 this question 相同的问题:

当我打开任何 .Rnw 文件时,R Studio 说我没有安装 TeX 发行版:我正在使用 Ubuntu 14.04 w/ Gnome 和 TeXLive 2014。

我在 Renviron.site 文件中包含行 PATH=/usr/local/texlive/2014/bin:${PATH},现在看起来像:

##                      Emacs please make this -*- R -*-
## empty Renviron.site for R on Debian
##
## Copyright (C) 2008 Dirk Eddelbuettel and GPL'ed
##
## see help(Startup) for documentation on ~/.Renviron and Renviron.site

# ## Example ~/.Renviron on Unix
# R_LIBS=~/R/library
# PAGER=/usr/local/bin/less

# ## Example .Renviron on Windows
# R_LIBS=C:/R/library
# MY_TCLTK="c:/Program Files/Tcl/bin"

# ## Example of setting R_DEFAULT_PACKAGES (from R CMD check)
# R_DEFAULT_PACKAGES='utils,grDevices,graphics,stats'
# # this loads the packages in the order given, so they appear on
# # the search path in reverse order.

PATH=/usr/local/texlive/2014/bin:${PATH}

但是问题依然存在。我该如何解决这个问题以及 运行 Sweave 或 knitR?

如果有人遇到同样的问题,我打开 R Studio 并使用

检查 pdflatex 安装
> Sys.which("pdflatex")
pdflatex 
  "" 

这表明它实际上是空的,所以我运行命令Sys.getenv("PATH")检查当前路径:

Sys.getenv("PATH")
[1]   "/usr/local/texlive/2014/bin:/usr/local/texlive/2014/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games"

要添加我的 pdflatex 路径,我必须在我的 texlive 目录中找到 pdflatex 文件,它是 /usr/local/texlive/2014/bin/x86_64-linux,然后我将其添加到我当前的路径:

> Sys.setenv(PATH=paste(Sys.getenv("PATH"),"/usr/local/texlive/2014/bin/x86_64-linux",sep=":"))

现在完美运行

编辑:上面的解决方案仅适用于打开的会话并且只是暂时的,每次打开新会话时都必须 运行 代码。我仍在努力寻找永久解决方案

查看此页面:Customizing Startup,修改此文件 /usr/lib/R/etc/Rprofile.site,并将您的代码放入此文件中。它看起来像是一个永久性的解决方案。

===

我看到这个文件 /etc/environmentSys.getenv("PATH") 的输出相同,所以我认为 sys.getenv("PATH") 读取文件 /etc/environment.

因此,更好的方法是修改此文件 /etc/environment 添加此代码 :/usr/local/texlive/2017/bin/x86_64-linux​.

完成后,我尝试source /etc/envronment并重新启动 Rstudio,但它没有用。

在我重新启动 ubuntu 系统后终于明白了。 ^_^

我希望我糟糕的英语表达足够清楚。