"Thomas Borg Salling" <tbs@navicon.dk> writes:
> createdb, and started psql to create function. The result from strace (when
> running the CREATE FUNCTION) of the backend is:
> "Q\0\0\0\237CREATE OR REPLACE FUNCTION "..., 8192, 0) = 160
> gettimeofday({1075756990, 462661}, NULL) = 0
> stat64("/usr/local/pgsql/lib/ascii_and_mic", 0xbfffca10) = -1 ENOENT (No
> such file or directory)
> stat64("/usr/local/pgsql/lib/ascii_and_mic.so", 0xbfffca10) = -1 ENOENT (No
> such file or directory)
> stat64("$libdir/ascii_and_mic", 0xbfffcad0) = -1 ENOENT (No such file or
> directory)
> write(2, "ERROR: could not access file \"$"..., 81) = 81
> It seems to search in /usr/local/pgsql.
Evidently. So, somehow src/backend/utils/fmgr/dfmgr.o got compiled with
the wrong value of PKGLIBDIR. You should look in src/Makefile.global to
check that it has the correct setting for pkglibdir (note difference in
case). Also try going to src/backend/utils/fmgr, removing dfmgr.o, and
saying "make" to see what -D switch gets passed by the makefile.
regards, tom lane