Thread: Undefined symbols: _poll

Undefined symbols: _poll

From
Joe Lester
Date:
I'm just moved my Postgres client project from Mac 10.2.8 to 10.3.5.
It's an Objective-C program that links to libpq.a (the header file is
libpq-fe.h). However, when I try to compile now I get the following
linking error:

ld: Undefined symbols: _poll

Does this sound familiar to anyone? My guess is that _poll is
referenced somewhere in libpq.a. Anyone have any ideas on how to get
the linking happening on Mac OS 10.3.5?

Thanks!

Joe



Re: Undefined symbols: _poll

From
Tom Lane
Date:
Joe Lester <joe_lester@sweetwater.com> writes:
> I'm just moved my Postgres client project from Mac 10.2.8 to 10.3.5.
> It's an Objective-C program that links to libpq.a (the header file is
> libpq-fe.h). However, when I try to compile now I get the following
> linking error:

> ld: Undefined symbols: _poll

poll() is a system function that seems to be in
/usr/lib/libSystem.B.dylib on my 10.3.5 machine.
Couldn't say why this isn't included automatically
in your program --- we certainly aren't doing anything
to explicitly link it into the standard PG programs
that use libpq.

            regards, tom lane

Re: Undefined symbols: _poll

From
David Helgason
Date:
On 30. sep 2004, at 21:35, Joe Lester wrote:
> I'm just moved my Postgres client project from Mac 10.2.8 to 10.3.5.
> It's an Objective-C program that links to libpq.a (the header file is
> libpq-fe.h). However, when I try to compile now I get the following
> linking error:
>
> ld: Undefined symbols: _poll
>
> Does this sound familiar to anyone? My guess is that _poll is
> referenced somewhere in libpq.a. Anyone have any ideas on how to get
> the linking happening on Mac OS 10.3.5?

We had the same problem. In our case the trick was to compile libpq on
OS X 10.3. The poll function was added in 10.3 (it's based on the
select function, but at least it exists).

Reading the description of your problem it sounds different.

d.
--
David Helgason,
Business Development et al.,
Over the Edge I/S (http://otee.dk)
Direct line +45 2620 0663
Main line +45 3264 5049