Re: $libdir not working
От | Tom Lane |
---|---|
Тема | Re: $libdir not working |
Дата | |
Msg-id | 29732.1267890126@sss.pgh.pa.us обсуждение исходный текст |
Ответ на | $libdir not working (Scott Geller <sgellergsu@gmail.com>) |
Список | pgsql-novice |
Scott Geller <sgellergsu@gmail.com> writes: > I'm trying to run the code: > CREATE FUNCTION plr_call_handler() > RETURNS LANGUAGE_HANDLER > AS '$libdir/plr' LANGUAGE C; > and getting the error: > An error occurred when executing the SQL command: > CREATE FUNCTION plr_call_handler() > RETURNS LANGUAGE_HANDLER > AS '$libdir/plr' LANGUAGE C > ERROR: could not access file "$libdir/plr": No such file or directory > [SQL State=58P01] > Yet, I'm able to create the function with no problem when I run: > CREATE FUNCTION plr_call_handler() > RETURNS LANGUAGE_HANDLER > AS '/usr/lib/postgresql/plr' LANGUAGE C; > I found the location by running in bash: > pg_config --pkglibdir Huh. "pg_config --pkglibdir" is definitely meant to print the same directory that is substituted for "$libdir". Are you sure you are invoking the copy of pg_config that goes with the postgres backend executable you're using? Also, the path is usually calculated relative to the location of the program, so putting pg_config in a different directory than the postgres executable is in could make it give bogus results. > I then tried to edit postgresql.conf by adding the line: > dynamic_library_path = '/usr/lib/postgresql:$libdir' This setting is not relevant to your problem. The meaning of $libdir is wired in, for a particular build and installation location. regards, tom lane
В списке pgsql-novice по дате отправления: