在postgresql中创建语言错误

时间:2012-10-27 11:19:47

标签: postgresql

我尝试在postgresql中创建一个语言pltcl。但是,我收到了这个错误。

postgres=# CREATE LANGUAGE 'pltcl';
ERROR:  could not access file "$libdir/pltcl": No such file or directory


postgres=# select * from pg_pltemplate;
 tmplname  | tmpltrusted | tmpldbacreate |      tmplhandler      |   tmplvalidator   |   tmpllibrary    | tmplacl 
-----------+-------------+---------------+-----------------------+-------------------+------------------+---------
 plpgsql   | t           | t             | plpgsql_call_handler  | plpgsql_validator | $libdir/plpgsql  | 
 pltcl     | t           | t             | pltcl_call_handler    |                   | $libdir/pltcl    | 
 pltclu    | f           | f             | pltclu_call_handler   |                   | $libdir/pltcl    | 
 plperl    | t           | t             | plperl_call_handler   | plperl_validator  | $libdir/plperl   | 
 plperlu   | f           | f             | plperl_call_handler   | plperl_validator  | $libdir/plperl   | 
 plpythonu | f           | f             | plpython_call_handler |                   | $libdir/plpython | 

在推荐互联网后,我得到了答案。也就是说,

In order to get pltcl.so you will need to compile the postgres code using --with-tcl configure switch. pltcl does not compile by default with postgres.

如何解决这个问题?

2 个答案:

答案 0 :(得分:3)

您需要安装postgresql-pltcl-9.1软件包,将9.1替换为您正在使用的postgres版本,如果它不同的话。

答案 1 :(得分:2)

sudo apt-get install postgresql-pltcl-9.6 postgresql-plperl-9.6