$libdir under linux
I want to create this function:
CREATE OR REPLACE FUNCTION myfunction(cstring)
RETURNS cstring AS
'$libdir/mylib','myfunction'
LANGUAGE 'C' IMMUTABLE STRICT;
In windows this is working fine and $libdir is substituted by the actual
path. In linux it is not substituted!
This is the error I get:
ERROR: could not access file "$libdir/mylib": No such file or directory
SQL state: 58P01
How do I fix it?
Marios Vodas <mvodas@gmail.com> writes:
I want to create this function:
CREATE OR REPLACE FUNCTION myfunction(cstring)
RETURNS cstring AS
'$libdir/mylib','myfunction'
LANGUAGE 'C' IMMUTABLE STRICT;
In windows this is working fine and $libdir is substituted by the actual
path. In linux it is not substituted!
I rather doubt that, considering that it works fine for everybody else.
This is the error I get:
ERROR: could not access file "$libdir/mylib": No such file or directory
So is mylib.so actually there in the library directory? (Try
"pg_config --pkglibdir" to confirm which directory that is.)
If so, try ldd on it --- maybe the problem is with some library
it references, not mylib.so itself.
regards, tom lane