Re: URGENT: Undefined Symbols Using XCode 2.5 on Mac OS X 10.5

From: Neil Tiffin <neilt(at)neiltiffin(dot)com>
To: Keary Suska <hierophant(at)pcisys(dot)net>
Cc: Postgres-Interfaces <pgsql-interfaces(at)postgresql(dot)org>
Subject: Re: URGENT: Undefined Symbols Using XCode 2.5 on Mac OS X 10.5
Date: 2007-12-24 23:16:57
Message-ID: 881E1475-B220-41D0-9DFF-98CAA41BD623@neiltiffin.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-interfaces


On Dec 24, 2007, at 12:35 PM, Keary Suska wrote:

> on 12/23/07 6:16 AM, jtv(at)xs4all(dot)nl purportedly said:
>
>>> I ha a perfectly functioning libpq before I upgraded my computer
>>> but for
>>> some reason I am now getting undefined symbol errors in libpq.a:
>>>
>>> AirBase:0: /Users/aksuska/Projects/FFSEmploy/AirBase
>>> Project/AirBase/libpq.a(fe-secure.o) reference to undefined
>>> _pthread_sigmask$UNIX2003
>>> AirBase:0: _close$UNIX2003
>>> AirBase:0: _fcntl$UNIX2003
>> [...]
>>
>> This sounds more like a generic linking problem specific to your
>> system
>> than a problem with postgres as such. Your best bet may be to ask on
>> platform-specific forums.
>>
>> That said, can't you build postgres from source and use the libpq
>> you get?
>
> Originally I was using a MacPorts install, but I compiled from
> source and
> used that lipq.a, but without any difference in result.
>

To find out if the symbol is in the library use the following command
"nm -A libpq.a | grep close". Of course you will need to the in the
same dir as libpq or use an absolute reference. I get the following:

Macintosh:lib$ nm -A libpq.a | grep close
libpq.a:fe-auth.o: U _krb5_cc_close
libpq.a:fe-connect.o: U _close
libpq.a:fe-connect.o: 000004dc t _closePGconn
libpq.a:fe-connect.o: U _fclose
libpq.a:fe-connect.o: U _pqsecure_close
libpq.a:fe-misc.o: U _close
libpq.a:fe-misc.o: U _pqsecure_close
libpq.a:fe-print.o: U _pclose
libpq.a:fe-lobj.o: U _close
libpq.a:fe-lobj.o: 000009fa T _lo_close
libpq.a:fe-protocol3.o: U _close
libpq.a:fe-protocol3.o: U _pqsecure_close
libpq.a:fe-secure.o: 000000a1 t _close_SSL
libpq.a:fe-secure.o: U _fclose
libpq.a:fe-secure.o: 000000f6 T _pqsecure_close

Now here you will see there is no "_close" related to "fe-secure.o".
Should you be using "_close_SSL" or "_fclose"? For my projects using
xCode I link against libpq.dylib. Not sure if this makes any
difference.

In response to

Responses

Browse pgsql-interfaces by date

  From Date Subject
Next Message Keary Suska 2007-12-26 17:32:22 Re: URGENT: Undefined Symbols Using XCode 2.5 on Mac OS X 10.5
Previous Message Keary Suska 2007-12-24 18:38:28 Re: URGENT: Undefined Symbols Using XCode 2.5 on Mac OS X 10.5