Re: PlPerl compile failure - Mailing list pgsql-hackers

From Alex Pilosov
Subject Re: PlPerl compile failure
Date
Msg-id Pine.BSO.4.10.10106191024150.8898-100000@spider.pilosoft.com
Whole thread Raw
In response to Re: PlPerl compile failure  (Bruce Momjian <pgman@candle.pha.pa.us>)
Responses Re: PlPerl compile failure  (Bruce Momjian <pgman@candle.pha.pa.us>)
List pgsql-hackers
Bruce, try the following patch, and let me know.

Apparently, on some systems, ExtUtils::Embed and MakeMaker are slightly
broken, and its impossible to make a shared library when compiling with
both CCDLFLAGS and LDDLFAGS, you have to pick one or the other.

Index: Makefile.PL
===================================================================
RCS file: /home/cvs/pgsql/pgsql/src/pl/plperl/Makefile.PL,v
retrieving revision 1.12.1000.1
diff --unified -r1.12.1000.1 Makefile.PL
--- Makefile.PL 2001/06/16 23:18:04     1.12.1000.1
+++ Makefile.PL 2001/06/19 14:10:33
@@ -29,8 +29,11 @@       exit(0);}
+my $ldopts=ldopts();
+$ldopts=~s/$Config{ccdlflags}//;
+WriteMakefile( 'NAME' => 'plperl', 
-       dynamic_lib => { 'OTHERLDFLAGS' =>  ldopts() } ,
+       dynamic_lib => { 'OTHERLDFLAGS' =>  $ldopts } ,       INC => "$ENV{EXTRA_INCLUDES}",       XS => { 'SPI.xs' =>
'SPI.c'},       OBJECT => 'plperl.o eloglvl.o SPI.o',
 


On Tue, 19 Jun 2001, Bruce Momjian wrote:

> 
> Output attached.
> 
> 
> > That's me fault. I'm reading up on bsdos documentation to see what's the
> > right way to run ld on it.
> > 
> > Can you give me output of 'perl -MExtUtils::Embed -e ldopts' and 'perl -V'
> > on your machine?
> > 
> > Thanks
> > 
> > 
> > 
> > On Tue, 19 Jun 2001, Bruce Momjian wrote:
> > 
> > > I am seeing this error in CVS current:
> > > 
> > > gmake -f Makefile all
> > > gmake[1]: Entering directory `/usr/var/local/src/gen/pgsql/CURRENT/pgsql/src/pl/plperl'
> > >
> > > LD_RUN_PATH="" ld -o blib/arch/auto/plperl/plperl.so -shared -x
> > > -L/usr/X11/lib -L/usr/local/lib plperl.o eloglvl.o SPI.o -rdynamic
> > > -Wl,-rpath,/usr/libdata/perl5/5.00503/i386-bsdos/CORE -L/usr/X11/lib
> > > -L/usr/local/lib
> > > /usr/libdata/perl5/5.00503/i386-bsdos/auto/DynaLoader/DynaLoader.a
> > > -L/usr/libdata/perl5/5.00503/i386-bsdos/CORE -lperl -ldl -lm -lc
> > > 
> > > ld: -r and -shared may not be used together
> > > ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> > > gmake[1]: *** [blib/arch/auto/plperl/plperl.so] Error 1
> > > gmake[1]: Leaving directory `/usr/var/local/src/gen/pgsql/CURRENT/pgsql/src/pl/plperl'
> > > gmake: *** [all] Error 2
> > > 
> > > Can anyone suggest a fix?  Everything else compiles fine.  I am on
> > > BSD/OS.
> > > 
> > > 
> > 
> > 
> 
> 



pgsql-hackers by date:

Previous
From: Tom Lane
Date:
Subject: Re: [PATCHES] [PATCH] Contrib C source for casting MONEY to INT[248] and FLOAT[48]
Next
From: Tom Lane
Date:
Subject: Re: AW: Re: [SQL] behavior of ' = NULL' vs. MySQL vs. Stand ards