Hi all,

I am a hyper noob in postgres and I'm trying to install the orafce module since we are in the process of trying out using Postgres instead of Oracle. From what I have read, I see that orafce has to be installed as a contrib module. Now the problem is, I cannot find the 'contrib' directory under our Postgres installation. I have already installed the 'postgresql-contrib' package (tried using both yum and rpm installation).

However, there is a 'contrib' directory that I see under '/usr/src/debug/postgresql-9.1.2/contrib', but I doubt whether thats the correct one.

I tried the following:

1. Copied the /usr/src/debug/postgresql-9.1.2/contrib to /var/lib/pgsql/9.1 (where the data-directory is located).

2. Downloaded and extracted 'orafce-3.0.3.tar.gz' into the contrib directory and ran 'make' as instructed in the INSTALL.orafunc file. Upon running 'make' I get the following errors:

[root@postgres01 orafce]# make
Makefile:20: ../../contrib/contrib-global.mk: No such file or directory
make: *** No rule to make target `../../contrib/contrib-global.mk'. Stop.
[root@postgres01 orafce]#

[root@postgres01 orafce]# make USE_PGXS=1
gcc -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -I/usr/include/et -Wall -Wmissing-prototypes -Wpointer-arith -Wdeclaration-after-statement -Wendif-labels -Wformat-security -fno-strict-aliasing -fwrapv -fpic -I. -I. -I/usr/pgsql-9.1/include/server -I/usr/pgsql-9.1/include/internal -I/usr/include/et -D_GNU_SOURCE -I/usr/include/libxml2 -I/usr/include -c -o others.o others.c
others.c:357:52: error: macro "InitFunctionCallInfoData" requires 6 arguments, but only 5 given
others.c: In function âora_decodeâ:
others.c:357: error: âInitFunctionCallInfoDataâ undeclared (first use in this function)
others.c:357: error: (Each undeclared identifier is reported only once
others.c:357: error: for each function it appears in.)
make: *** [others.o] Error 1
[root@postgres01 orafce]#
To try to fix the 'Makefile:20: ../../contrib/contrib-global.mk: No such file or directory' error, I was thinking of copying 'contrib' directory to two levels above 'orafce', but even if I do that there is no file named 'contrib-global.mk' in the contrib directory.

Is there something that I am missing here? Shouldn't the 'contrib' directory appear with all the contents when the 'postgresql-contrib' package is installed? Is there a way I can manually create a 'contrib' directory that will be used by the Postgres? Should I re-install the postgresql-contrib package using the tar package manually?

Waiting for help

Thank You,