Thank you Tom, you are correct. Adding the line:

OBJS = test_cfunc.o

to the Makefile resolved the problem.

-Dave


On Tue, Jan 8, 2013 at 12:55 PM, Tom Lane <t...@sss.pgh.pa.us> wrote:

> David Fuhry <dfu...@gmail.com> writes:
> > Hi, I'm trying to add a C-Language function but getting the following
> error:
> > $ psql -f test_cfunc.sql
> > psql:test_cfunc.sql:3: ERROR:  incompatible library
> > "/usr/local/pgsql/lib/test_cfunc.so": missing magic block
> > HINT:  Extension libraries are required to use the PG_MODULE_MAGIC macro.
>
> > I am calling PG_MODULE_MAGIC in my c file. Minimal Makefile, .c, and .sql
> > files are attached. In the Makefile, if I change "MODULE_big" to
> "MODULES",
> > it works. However, I want to use "MODULE_big" because I need to later
> link
> > to a shared library using SHLIB_LINK, and "MODULES" doesn't support
> > SHLIB_LINK as per
> > http://archives.postgresql.org/pgsql-hackers/2012-03/msg00537.php
>
> I think you're missing the OBJS line, with the result that the .so ends
> up empty.
>
>                         regards, tom lane
>

Reply via email to