Greetings,
I'm trying to create a simple function for postgres-6.4.2 under
FreeBSD-3.1-RELEASE and GCC-2.7.2.1. This is the program code, simply
converts a bool to int4:
#include "../include/postgres.h"
int4
bool2int(bool bCondition)
{ if (bCondition) return(1); else return(0);
}
Then on the command line to create the shared lib and a file command to
ensure I created a shared lib:
# gcc -shared -I../include -o procs.so bool2int.c
# file procs.so
procs.so: ELF 32-bit LSB shared object, Intel 80386, version 1 (FreeBSD),
not stripped
Then in psql:
=> create function bool2int(bool) returns int4 as
'/usr/local/pgsql/procs/procs.so' language 'c';
CREATE
=> select bool2int(1=1);
ERROR: Can't find function bool2int in file /usr/local/pgsql/procs/procs.so
=>
Any insight as to why this does not work would be greatly appreciated.
Thank you,
Matthew Hagerty