PostgreSQL 8.2.5 compile problem

Started by Madison Kellyover 18 years ago3 messagesgeneral
Jump to latest
#1Madison Kelly
linux@alteeve.com

Hi all,

I am trying to compile PgSQL 8.2.5 (on Debian Etch, in case it
matters). This is a second install for a dedicated program, which is why
I am not using the binaries in the apt repositories.

My problem is, 'make' is failing with:

<previous stuff snipped>
make -C pl install
make[2]: Entering directory `/home/digimer/projects/mizu-bu/pgsql/src/pl'
make[3]: Entering directory
`/home/digimer/projects/mizu-bu/pgsql/src/pl/plpgsql'
make -C src install
make[4]: Entering directory
`/home/digimer/projects/mizu-bu/pgsql/src/pl/plpgsql/src'
/bin/sh ../../../../config/install-sh -c -m 755 libplpgsql.so.1.0
'/usr/share/mizu-bu/pgsql//lib/plpgsql.so'
make[4]: Leaving directory
`/home/digimer/projects/mizu-bu/pgsql/src/pl/plpgsql/src'
make[3]: Leaving directory
`/home/digimer/projects/mizu-bu/pgsql/src/pl/plpgsql'
make[3]: Entering directory
`/home/digimer/projects/mizu-bu/pgsql/src/pl/plperl'
gcc -O2 -Wall -Wmissing-prototypes -Wpointer-arith -Winline
-Wdeclaration-after-statement -Wendif-labels -fno-strict-aliasing -fpic
-shared -Wl,-soname,libplperl.so.0 plperl.o spi_internal.o SPI.o
-L/usr/local/lib -L/usr/lib/perl/5.8/CORE -L../../../src/port
/usr/lib/perl/5.8/auto/DynaLoader/DynaLoader.a -lperl -ldl -lm -lpthread
-lc -lcrypt -Wl,-rpath,'/usr/lib/perl/5.8/CORE' -o libplperl.so.0.0
/usr/bin/ld: cannot find -lperl
collect2: ld returned 1 exit status
make[3]: *** [libplperl.so.0.0] Error 1
make[3]: Leaving directory
`/home/digimer/projects/mizu-bu/pgsql/src/pl/plperl'
make[2]: *** [install] Error 1
make[2]: Leaving directory `/home/digimer/projects/mizu-bu/pgsql/src/pl'
make[1]: *** [install] Error 2
make[1]: Leaving directory `/home/digimer/projects/mizu-bu/pgsql/src'
make: *** [install] Error 2

After this error, I searched for 'libplperl.so.0.0' but couldn't find
it (I did updatedb first). I did find
'/<program_dir>/pgsql/src/pl/plperl/libplperl.a' though...

The 'configure' step seemed to be okay:

./configure --prefix=/usr/share/mizu-bu/pgsql/ --with-pgport=1062
--without-docdir --with-perl --without-tcl --without-python
--without-krb5 --without-pam --without-ldap --without-bonjour
--without-openssl --without-readline --without-zlib

<stuff snipped>
checking for perl... /usr/bin/perl
checking for Perl archlibexp... /usr/lib/perl/5.8
checking for Perl privlibexp... /usr/share/perl/5.8
checking for Perl useshrplib... true
checking for flags to link embedded Perl... -L/usr/local/lib
/usr/lib/perl/5.8/auto/DynaLoader/DynaLoader.a -L/usr/lib/perl/5.8/CORE
-lperl -ldl -lm -lpthread -lc -lcrypt

Any idea why 'make' is failing? I am using GNU Make 3.81, as the docs
require.

Madi

#2Tom Lane
tgl@sss.pgh.pa.us
In reply to: Madison Kelly (#1)
Re: PostgreSQL 8.2.5 compile problem

Madison Kelly <linux@alteeve.com> writes:

gcc -O2 -Wall -Wmissing-prototypes -Wpointer-arith -Winline
-Wdeclaration-after-statement -Wendif-labels -fno-strict-aliasing -fpic
-shared -Wl,-soname,libplperl.so.0 plperl.o spi_internal.o SPI.o
-L/usr/local/lib -L/usr/lib/perl/5.8/CORE -L../../../src/port
/usr/lib/perl/5.8/auto/DynaLoader/DynaLoader.a -lperl -ldl -lm -lpthread
-lc -lcrypt -Wl,-rpath,'/usr/lib/perl/5.8/CORE' -o libplperl.so.0.0
/usr/bin/ld: cannot find -lperl

After this error, I searched for 'libplperl.so.0.0' but couldn't find
it (I did updatedb first).

It's complaining about the lack of libperl.so ... the other one is what
it wants to build.

The 'configure' step seemed to be okay:

AFAICT, our configure just believes what perl's ExtUtils::Embed and
Config modules tell it ... it doesn't actually test the results. So I'm
thinking either libperl.so isn't installed, or it isn't where those
modules say it is --- which would be a Perl misconfiguration.

regards, tom lane

#3Madison Kelly
linux@alteeve.com
In reply to: Tom Lane (#2)
Re: PostgreSQL 8.2.5 compile problem

Tom Lane wrote:

Madison Kelly <linux@alteeve.com> writes:

gcc -O2 -Wall -Wmissing-prototypes -Wpointer-arith -Winline
-Wdeclaration-after-statement -Wendif-labels -fno-strict-aliasing -fpic
-shared -Wl,-soname,libplperl.so.0 plperl.o spi_internal.o SPI.o
-L/usr/local/lib -L/usr/lib/perl/5.8/CORE -L../../../src/port
/usr/lib/perl/5.8/auto/DynaLoader/DynaLoader.a -lperl -ldl -lm -lpthread
-lc -lcrypt -Wl,-rpath,'/usr/lib/perl/5.8/CORE' -o libplperl.so.0.0
/usr/bin/ld: cannot find -lperl

After this error, I searched for 'libplperl.so.0.0' but couldn't find
it (I did updatedb first).

It's complaining about the lack of libperl.so ... the other one is what
it wants to build.

The 'configure' step seemed to be okay:

AFAICT, our configure just believes what perl's ExtUtils::Embed and
Config modules tell it ... it doesn't actually test the results. So I'm
thinking either libperl.so isn't installed, or it isn't where those
modules say it is --- which would be a Perl misconfiguration.

regards, tom lane

Doh!

Was missing the libperl-dev package. Thanks! :)

Madi