【发布时间】:2013-12-07 19:00:36
【问题描述】:
如果有人能指导我解决某个特定问题,我将不胜感激...我想我知道是什么原因造成的,但我不知道如何解决它。
问题——Emacs ESS 无法启动 R。
原因-- 我安装了 OpenFOAM,这是一个开源流体建模工具包,它有自己的函数 R,并以字母“R”执行。 (即在命令行中键入“R”,它会尝试运行 OpenFOAM 函数,而不是 R)。我认为通过安装 OpenFoam,我已经覆盖了以前调用语言 R 的“R”,因此 ESS 试图调用 R 时会混淆。
环境——我正在 ssh'ing 到一个运行科学 linux 的远程客户端,我没有 root 访问权限。我不完全了解 ESS 调用的是我帐户本地的以及非本地调用的内容。
从命令行调用 /usr/bin/./R 会启动一个 R 实例。如何修改 ESS 使其调用“/usr/bin/./R”?
这是我能找到的最接近的,ESS to call different installations of R,但据我所知,我的系统在其执行路径上根本没有 R-1 或 R-2,所以我不知道如何类似的。
【问题讨论】:
-
我不确定我是否遵循 OpenFOAM 正在做的事情,但也许 this answer 的一部分会帮助您解决问题。除其他外,它还展示了如何将 R 的 R-3.*.* 版本放在 exec 路径中。
-
嗯......它对我还不起作用。有没有办法找出 ESS 在尝试启动 R 时到底调用了什么?
-
在我的(正常运行的)Emacs 上,
C-h f R告诉我M-x R启动了一个调用 R 的交互式 lisp 函数。DoingM-x R <TAB> <TAB>还提供了许多与 R 相关的补全。 -
您对 Windows 位的看法是正确的。不过,
C-h f R应该告诉你M-x R运行什么。不过,我可能无法提供更多帮助,因为我不是任何类型的 Emacs/ESS 向导。 -
R-newest与 R 相关(尝试C-h f R-newest来查看)。 确实听起来 ESS 无法找到您的 R 可执行文件所在的目录。在 Windows 上,我会说检查C-h v inferior-R-program-name、C-h v ess-directory-containing-R和C-h v ess-r-versions的值,但如果 Unix 使用与 Windows 不同的系统来处理这些事情,我想这些不会有帮助。