Re: [SQL] binary operators / C func getting "invalid ELF header"

From: "Gene Selkov Jr(dot)" <selkovjr(at)mcs(dot)anl(dot)gov>
To: Michael Olivier <molivier(at)yahoo(dot)com>, pgsql-sql(at)postgresql(dot)org
Subject: Re: [SQL] binary operators / C func getting "invalid ELF header"
Date: 1999-01-19 01:47:25
Message-ID: 199901190245.UAA00925@mail.xnet.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-sql

>
> I've gone down the path of trying to write a C function to
> do this... and am getting this error:
>
> db=3D> select not_a_and__a_xor_b(1,1);
> ERROR: Load of file /home/michael/sql/funcs.so failed:
> =A8=B8t(at)=A8=B8t@chael/sql/funcs.so: invalid ELF header
>
> I'm compiling with the -fpic option for Linux (under gcc)
>
> cc -c -O2 -fpic -g -I. -I./include -I. -I./include -c funcs.c -o
> funcs.o
> /bin/rm -f funcs.so
> /usr/bin/ar cr funcs.so funcs.o =20

Try to adapt the Makefile from src/tutorial to your purposes. Make sure it includes the right
rules by changing

SRCDIR= ..
include ../Makefile.global

to:

SRCDIR= /path/to/your/postgres/source/tree/src
include $(SRCDIR)/Makefile.global

Then name your target files in $(DLOBJS).

You may also want to note the sed rules that substitute anchors such
as _OBJWD_ with the absolute path. They make your sql scripts more
portable (see funcs.source for example.

--Gene

Browse pgsql-sql by date

  From Date Subject
Next Message Gregory W Burnham 1999-01-19 03:18:01 Re: [SQL] binary operators / C func getting "invalid ELF header"
Previous Message Michael Olivier 1999-01-19 00:51:30 binary operators / C func getting "invalid ELF header"