Re: PlPerl compile failure

Lists: pgsql-hackers
From: Bruce Momjian <pgman(at)candle(dot)pha(dot)pa(dot)us>
To: PostgreSQL-development <pgsql-hackers(at)postgreSQL(dot)org>
Subject: PlPerl compile failure
Date: 2001-06-19 12:06:27
Message-ID: 200106191206.f5JC6R108371@candle.pha.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-hackers

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.

--
Bruce Momjian | http://candle.pha.pa.us
pgman(at)candle(dot)pha(dot)pa(dot)us | (610) 853-3000
+ If your life is a hard drive, | 830 Blythe Avenue
+ Christ can be your backup. | Drexel Hill, Pennsylvania 19026


From: Bruce Momjian <pgman(at)candle(dot)pha(dot)pa(dot)us>
To: Alex Pilosov <alex(at)pilosoft(dot)com>
Cc: PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: PlPerl compile failure
Date: 2001-06-19 12:31:55
Message-ID: 200106191231.f5JCVtg10286@candle.pha.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-hackers


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.
> >
> >
>
>

--
Bruce Momjian | http://candle.pha.pa.us
pgman(at)candle(dot)pha(dot)pa(dot)us | (610) 853-3000
+ If your life is a hard drive, | 830 Blythe Avenue
+ Christ can be your backup. | Drexel Hill, Pennsylvania 19026

Attachment Content-Type Size
unknown_filename text/plain 1.7 KB

From: Alex Pilosov <alex(at)pilosoft(dot)com>
To: Bruce Momjian <pgman(at)candle(dot)pha(dot)pa(dot)us>
Cc: PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: PlPerl compile failure
Date: 2001-06-19 12:40:24
Message-ID: Pine.BSO.4.10.10106190831330.8898-100000@spider.pilosoft.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-hackers

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.
>
>


From: Alex Pilosov <alex(at)pilosoft(dot)com>
To: Bruce Momjian <pgman(at)candle(dot)pha(dot)pa(dot)us>
Cc: PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: PlPerl compile failure
Date: 2001-06-19 14:26:19
Message-ID: Pine.BSO.4.10.10106191024150.8898-100000@spider.pilosoft.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: 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.
> > >
> > >
> >
> >
>
>


From: Bruce Momjian <pgman(at)candle(dot)pha(dot)pa(dot)us>
To: Alex Pilosov <alex(at)pilosoft(dot)com>
Cc: PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: PlPerl compile failure
Date: 2001-06-20 00:26:10
Message-ID: 200106200026.f5K0QAN05122@candle.pha.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-hackers


The fix worked. Thanks. Patch applied.

> 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.
> > > >
> > > >
> > >
> > >
> >
> >
>
>

--
Bruce Momjian | http://candle.pha.pa.us
pgman(at)candle(dot)pha(dot)pa(dot)us | (610) 853-3000
+ If your life is a hard drive, | 830 Blythe Avenue
+ Christ can be your backup. | Drexel Hill, Pennsylvania 19026