1

我在 Ubuntu 14.04 64 位机器上工作。我需要使用 Perl 5.14 来处理某些无法使用最新版本的 perl (5.18) 安装的模块。我的 postgresql-9.3 服务器在安装 postgres-plperl 时需要安装 perl 5.18。因此我想告诉 Postgres 使用 5.14 版本,但我还没有找到一种方法来做到这一点。有没有办法做到这一点?

4

1 回答 1

3

如果你真的需要这个,你必须针对 5.14 重新编译 plperl 扩展。PostgreSQL 将 Perl 链接为一个库,而 Perl 库在不同版本之间不兼容 ABI,因此您不能在运行时仅用 5.14 替换 5.18。

您可以通过从源执行 PostgreSQL 安装并指定正确的 Perl 安装路径来configure使用--with-perlPATHenv var 来更改使用的 Perl 版本。

或者您可以apt-get source postgresql-9.3编辑debian/rules以使用所需的 Perl,编辑debian/control以指定正确的 Perl 依赖项,然后重新构建包。

改为修复模块更有意义。

于 2014-08-18T07:49:28.487 回答