Re: Perl modules problem on OS X - Mailing list pgsql-general

From Tom Lane
Subject Re: Perl modules problem on OS X
Date
Msg-id 16616.1029362834@sss.pgh.pa.us
Whole thread Raw
In response to Perl modules problem on OS X  (Alex Rice <alex_rice@arc.to>)
Responses Re: Perl modules problem on OS X  (Alex Rice <alex_rice@arc.to>)
List pgsql-general
Alex Rice <alex_rice@arc.to> writes:
> dyld: perl multiple definitions of symbol _DLAddHead
> /Library/Perl/darwin/auto/mapscript/mapscript.bundle definition
> of _DLAddHead
> /Library/Perl/darwin/auto/DBD/Pg/Pg.bundle definition of _DLAddHead

> The strange thing is, of the 3 modules DBI, Pg and mapscript, all
> 3 work OK independently, but when I use;  any two them from the
> same script, the above symbol definitions problem occurs and the
> script dies.

Hm.  It would appear that all three modules have copies of libpq.a
statically bound into them, and OS X's dynamic loader won't accept
loading dynamic libraries with conflicting symbol names.

DLAddHead is presumably just the first conflict the loader ran into
--- if you got rid of that, it'd still fail on PQExec and the other
symbols exported by libpq.

I imagine that this can be worked around by changing the way that
these modules are linked, but I really have no idea exactly what has
to be done or by whom.  You might try asking around among OSX gurus
about what to do with name conflicts between libraries.

            regards, tom lane

pgsql-general by date:

Previous
From: Tom Lane
Date:
Subject: Re: PG 7.2.1 core dump
Next
From: Bruce Momjian
Date:
Subject: Re: cvs postgresql current lacks 'ksqo' ? odbc/pgadmin