postgres a relocation error
Horák Daniel
horak na sit.plzen-city.cz
Pondělí Únor 21 15:18:13 CET 2000
> postgres=> CREATE FUNCTION add_one (int4) RETURNS int4 AS '
> BEGIN
> RETURN $1 + 1;
> END;
> ' LANGUAGE 'plpgsql';
> CREATE
> postgres=> select add_one(*);
> ERROR: Load of file /usr/local/pgsql/lib/plpgsql.so failed: ld.so.1:
> /usr/local/pgsql/bin/postmaster: fatal: relocation error: file
> /usr/local/pgsql/lib/plpgsql.so: symbol CurrentMemoryContext:
> referenced symbol
> not found
Stejny problem jsem mel pri portovani pgsql do WinNT ;-). Jde o to, ze modul
plpgsql.so potrebuje promennou CurrentMemoryContext, ktera je v binarce
"postgres". Na Linuxu je to reseno volbou "-export-dynamic" pri linkovani
"postgres", ktera zajisti, ze vsechny symboly (jmena funkci a promennych z
binarky "postgres") budou dostupne i pro dynamicky dohravane moduly pomoci
dlopen. Tak bych se podival, cim a s jakymi volbami se linkuje "postgres".
Potom je mozne zkusit hledani v archivech konference pgsql-hackers a
pgsql-ports, zkusit posledni verzi apod ;-)
Dan
Další informace o konferenci Databases