plperl doesn't build in CVS tip?

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: pgsql-hackers(at)postgreSQL(dot)org
Subject: plperl doesn't build in CVS tip?
Date: 2003-05-15 23:14:50
Message-ID: 21720.1053040490@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On a RHL 8.0 box, I'm getting this:

gcc -O2 -g -fpic -I. -I/usr/lib/perl5/5.8.0/i386-linux-thread-multi/CORE -I../../../src/include -c -o plperl.o plperl.c
In file included from /usr/lib/perl5/5.8.0/i386-linux-thread-multi/CORE/op.h:480,
from /usr/lib/perl5/5.8.0/i386-linux-thread-multi/CORE/perl.h:2209,
from plperl.c:61:
/usr/lib/perl5/5.8.0/i386-linux-thread-multi/CORE/reentr.h:602: field `_crypt_struct' has incomplete type
/usr/lib/perl5/5.8.0/i386-linux-thread-multi/CORE/reentr.h:747: confused by earlier errors, bailing out
make: *** [plperl.o] Error 1

Is anyone else seeing the same? I'm confused because I'm quite sure
it built there recently. I suspect one of the recent changes to our
configure stuff broke it, but I don't see the connection offhand.

A little bit of digging suggests that this Perl include file will
compile as-is if and only if _GNU_SOURCE is #define'd (that's the only
way to get <crypt.h> to define the needed struct). Now Perl's config.h
does define that symbol --- but far too late, because it has to have
been defined the *first* time <features.h> is read, or it won't have any
effect. So I don't see right now how this could ever have worked.
But it did, and not too long ago. Any ideas?

regards, tom lane

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Alvaro Herrera 2003-05-15 23:39:55 Re: [PATCHES] Static snapshot data
Previous Message Bruce Momjian 2003-05-15 20:13:31 Re: Win32, compiles, under, MinGW/Msys!