Thread: Can't createlang plpgsql
Hello I can't get pl/pgsql to install using creatlang. I've listed what I did and the messages I received. I'm running 7.1.3 configured as follows: ./configure --enable-multibyte=UNICODE --enable-unicode-conversion --with-perl The distro is Redhat 7.1. Thanks. Michael Fahey $ createlang -l template1 Procedural languages Name | Trusted? | Compiler ------+----------+---------- (0 rows) $createlang plpgsql template1 createlang: missing required argument PGLIB directory (This is the directory where the interpreter for the procedural language is stored. Traditionally, these are installed in whatever 'lib' directory was specified at configure time.) $export PGLIB=/usr/local/pgsql/lib echo $PGLIB /usr/local/pgsql/lib $ls /usr/local/pgsql/lib libecpg.a libecpg.so libecpg.so.3 libecpg.so.3.2.0 libpgeasy.a libpgeasy.so libpgeasy.so.2 libpgeasy.so.2.1 libpq.a libpq.so libpq.so.2 libpq.so.2.1 plpgsql.so #the next few messages are really confusing me. $createlang plpgsql template1 createlang: A function named 'plpgsql_call_handler' already exists. Installation aborted. $droplang -d template1 plpgsql droplang: 'plpgsql' is not installed in database template1 $createlang plpgsql template1 createlang: A function named 'plpgsql_call_handler' already exists. Installation aborted. createlang -l template1 Procedural languages Name | Trusted? | Compiler ------+----------+---------- (0 rows)
"Michael R. Fahey" <mfahey@qilinlaw.com> writes: > I can't get pl/pgsql to install using creatlang. I've listed what I did > and the messages I received. > I'm running 7.1.3 configured as follows: The error message you quote is not from 7.1's createlang, but 7.0 or before. Perhaps you have a version mixup? In any case, creating a PL language is a two-step process: install a function and then define the language. Evidently only the first of these steps has gotten done. Try dropping the function by hand and then trying again. regards, tom lane