在Mac Lion上安装PLR

时间:2013-01-23 20:55:34

标签: macos r postgresql plr

我正在尝试在运行OS X 10.7.5,Postgres 9.2和R 2.15.2的MacBook Pro上安装PL / R 8.3.0.13.1。我在网上找到了 nice step-by-step guide的Windows,但我找不到类似Mac的东西 当我运行此命令[作为官方文档](http://www.joeconway.com/plr/doc/plr-install.html):

时,我卡住了
USE_PGXS=1 make

输出:

make: pkg-config: Command not found
make: pkg-config: Command not found
make: pkg-config: Command not found
make: pkg-config: Command not found
make: pkg-config: Command not found

*** Cannot build PL/R because R_HOME cannot be found.
*** Refer to the documentation for details.

显然,这意味着我需要以某种方式创建R_HOME,变量和/或位置......

知道该怎么做吗?

2 个答案:

答案 0 :(得分:1)

错误消息实际上有点令人困惑。如果查看PL / R的Makefile,逻辑是它在设置时使用R_HOME来查找R,否则它会尝试pkg-config。你既没有设定,也没有设定。

我建议尽可能使用pkg-config路线。 R_HOME路由似乎假定R安装方案可能不普遍适用。也许它直接适用于源码构建。

以上适用于所有平台。现在在OS X上,它取决于你如何安装R.例如,如果你使用MacPorts,它将是这样的:

sudo port install pkgconfig
sudo port install R

然后构建PL / R本身:

make USE_PGXS=1

但是这会打破,因为PL / R并不期望MacPorts将R标头分成两个独立的目录(我认为是架构相关的和独立的)。

自制软件可能会更好用,但原理是一样的。

答案 1 :(得分:0)

您需要弄清楚应该设置PLR环境R_HOME变量的内容。在终端会话中我得到了这个

computername:~ username$ R RHOME      #only enter stuff after"$"
/Library/Frameworks/R.framework/Resources

这是您链接到的页面的底部:

“提示:在postmaster启动之前,必须在启动PostgreSQL的用户环境中定义R_HOME。否则PL / R将拒绝加载。请参阅plr_environ(),它允许检查可用的环境PostgreSQL postmaster流程。“

这来自webpage describing the problem and offering a fix

To fix: Add a "R_HOME = '/usr/lib/R' " to /etc/postgresql/version/cluster/environmen

Example Fix for version 8.1:
 $ sudo -s
 # echo -e "\nR_HOME = '/usr/lib/R'" >> /etc/postgresql/8.1/main/environment
 # exit

To Test:
 $ sudo /etc/init.d/postgresql-8.1 restart
 $ sudo -u postgres psql plr_test
 plr_test=# select test();
  test
 ------