Subject: Re: NetBSD pkgsrc-2005Q3 lang/perl5 build fails: ld: cannot find -ldb
To: Lasse =?iso-8859-1?Q?Hiller=F8e?= Petersen <lhp@toft-hp.dk>
From: Manuel Bouyer <bouyer@antioche.eu.org>
List: tech-pkg
Date: 10/19/2005 22:24:14
On Tue, Oct 18, 2005 at 11:38:27PM +0200, Lasse Hillerĝe Petersen wrote:
> I am trying to rebuild my packages on my NetBSD 2.0 system, because I 
> want to use the stable quarterly branch. I have downloaded pkgsrc-2005Q3 
> and updated from CVS. Before installing I did a pkg_delete of all 
> packages, and removed /usr/pkg. I then installed a few base things 
> (digest, pkg-install, libtool-base, audit-packages, and sudo) , and 
> proceeded with perl5. I get the following error when trying to build perl5:
> 
>        Making DB_File (dynamic)
> Writing Makefile for DB_File
> cp DB_File.pm ../../lib/DB_File.pm
> AutoSplitting ../../lib/DB_File.pm (../../lib/auto/DB_File)
> cc -c    -fno-strict-aliasing -pipe -I/usr/pkg/include -O2 -pthread 
> -I/usr/include    -DVERSION=\"1.811\"  -DXS_VERSION=\"1.811\" -DPIC 
> -fPIC "-I../.."   version.c
> ../../miniperl "-I../../lib" "-I../../lib" ../../lib/ExtUtils/xsubpp 
> -noprototypes -typemap ../../lib/ExtUtils/typemap -typemap typemap  
> DB_File.xs > DB_File.xsc && mv DB_File.xsc DB_File.c
> cc -c    -fno-strict-aliasing -pipe -I/usr/pkg/include -O2 -pthread 
> -I/usr/include    -DVERSION=\"1.811\"  -DXS_VERSION=\"1.811\" -DPIC 
> -fPIC "-I../.."   DB_File.c
> Running Mkbootstrap for DB_File ()
> chmod 644 DB_File.bs
> rm -f ../../lib/auto/DB_File/DB_File.so
> LD_RUN_PATH="/usr/local/lib" cc  -Wl,-R/usr/pkg/lib  -pthread 
> --whole-archive -shared  -L/usr/pkg/lib version.o DB_File.o  -o 
> ../../lib/auto/DB_File/DB_File.so   -L/usr/local/lib -ldb -L../.. 
> -Wl,-R/usr/pkg/lib/perl5/5.8.0/i386-netbsd-thread-multi/CORE 
> -Wl,-R../../lib/CORE -lperl   
> ld: cannot find -ldb
> *** Error code 1
> 
> Stop.
> make: stopped in /usr/pkgsrc/lang/perl5/work/perl-5.8.7/ext/DB_File
> *** Error code 1
> 
> Stop.
> make: stopped in /usr/pkgsrc/lang/perl5/work/perl-5.8.7
> *** Error code 1
> 
> Stop.
> make: stopped in /usr/pkgsrc/lang/perl5
> ===>
> ===> There was an error during the ``build'' phase.
> ===> Please investigate the following for more information:
> ===>      * log of the build
> ===>      * /usr/pkgsrc/lang/perl5/work/.work.log
> ===>
> *** Error code 1
> 
> Stop.
> make: stopped in /usr/pkgsrc/lang/perl5
> 
> If I'm not mistaken there is no need to use -ldb in NetBSD, so why is 
> this happening? Have I missed something obvious?

No, -ldb isn't needed, and my perl5 build on 2.0 doesn't use it. Not sure why
it is trying to use it here.
The anserw is probably in the configure phase, look at the output of
make configure

-- 
Manuel Bouyer <bouyer@antioche.eu.org>
     NetBSD: 26 ans d'experience feront toujours la difference
--