Problems building DBD 1.51 on Solaris 9
am 23.06.2006 17:45:20 von bkroegerHello,
I'm having problems building DBD 1.51 on Solaris 9. I have not found
anything in google that has helped with with this problem, aside from
that I should be using a compiler that was built on Solaris 9.
I needed a 64 bit version of Perl for an application I am working on. I
built gcc 4.1.1 on Solaris 9, then used that to build the 64 bit Perl on
the same host. I can install CPAN with this version of Perl, but had
not been able to build DBD 1.5.1.
Here's the output of the build. (The output of perl -V follows.)
bkroeger (80) % /usr/local/apps/perl-5.8.8-64_bit/bin/perl Makefile.PL
*** You are using a perl configured with threading enabled.
*** You should be aware that using multiple threads is
*** not recommended for production environments.
*** Note:
The optional PlRPC-modules (RPC::PlServer etc) are not installed.
If you want to use the DBD::Proxy driver and DBI::ProxyServer
modules, then you'll need to install the RPC::PlServer, RPC::PlClient,
Storable and Net::Daemon modules. The CPAN Bundle::DBI may help you.
You can install them any time after installing the DBI.
You do *not* need these modules for typical DBI usage.
Optional modules are available from any CPAN mirror, in particular
http://search.cpan.org/
http://www.perl.com/CPAN/modules/by-module
http://www.perl.org/CPAN/modules/by-module
ftp://ftp.funet.fi/pub/languages/perl/CPAN/modules/by-module
Your perl was compiled with gcc (version 4.1.1), okay.
Creating DBI::PurePerl test variant: t/zvpp_01basics.t
Creating DBI::PurePerl test variant: t/zvpp_02dbidrv.t
Creating DBI::PurePerl test variant: t/zvpp_03handle.t
Creating DBI::PurePerl test variant: t/zvpp_04mods.t
Creating DBI::PurePerl test variant: t/zvpp_05thrclone.t (use threads)
Creating DBI::PurePerl test variant: t/zvpp_06attrs.t
Creating DBI::PurePerl test variant: t/zvpp_07kids.t
Creating DBI::PurePerl test variant: t/zvpp_08keeperr.t
Creating DBI::PurePerl test variant: t/zvpp_09trace.t
Creating DBI::PurePerl test variant: t/zvpp_10examp.t
Creating DBI::PurePerl test variant: t/zvpp_11fetch.t
Creating DBI::PurePerl test variant: t/zvpp_14utf8.t
Creating DBI::PurePerl test variant: t/zvpp_15array.t
Creating DBI::PurePerl test variant: t/zvpp_20meta.t
Creating DBI::PurePerl test variant: t/zvpp_30subclass.t
Creating DBI::PurePerl test variant: t/zvpp_40profile.t
Creating DBI::PurePerl test variant: t/zvpp_41prof_dump.t
Creating DBI::PurePerl test variant: t/zvpp_42prof_data.t
Creating DBI::PurePerl test variant: t/zvpp_43profenv.t
Creating DBI::PurePerl test variant: t/zvpp_50dbm.t
Creating DBI::PurePerl test variant: t/zvpp_60preparse.t
Creating DBI::PurePerl test variant: t/zvpp_70callbacks.t
Creating DBI::PurePerl test variant: t/zvpp_72childhandles.t
Creating DBI::PurePerl test variant: t/zvpp_80proxy.t
Checking if your kit is complete...
Looks good
I see you're using perl 5.008008 on sun4-solaris-thread-multi-64, okay.
Remember to actually *read* the README file!
Use 'make' to build the software (dmake or nmake on Windows).
Then 'make test' to execute self tests.
Then 'make install' to install the DBI and then delete this working
directory before unpacking and building any DBD::* drivers.
Writing Makefile for DBI
bkroeger (81) % make
/usr/local/apps/perl-5.8.8-64_bit/bin/perl "-MExtUtils::Command" -e
mkpath blib/lib/DBI
rm -f blib/lib/DBI/Changes.pm
cp Changes blib/lib/DBI/Changes.pm
/usr/local/apps/perl-5.8.8-64_bit/bin/perl "-MExtUtils::Command" -e
mkpath blib/lib/DBI
rm -f blib/lib/DBI/Roadmap.pm
cp Roadmap.pod blib/lib/DBI/Roadmap.pm
cp dbd_xsh.h blib/arch/auto/DBI/dbd_xsh.h
cp dbivport.h blib/arch/auto/DBI/dbivport.h
cp lib/DBI/FAQ.pm blib/lib/DBI/FAQ.pm
cp Driver_xst.h blib/arch/auto/DBI/Driver_xst.h
cp lib/DBD/Proxy.pm blib/lib/DBD/Proxy.pm
cp lib/DBI/SQL/Nano.pm blib/lib/DBI/SQL/Nano.pm
cp lib/DBI/Const/GetInfo/ANSI.pm blib/lib/DBI/Const/GetInfo/ANSI.pm
cp lib/DBD/DBM.pm blib/lib/DBD/DBM.pm
cp DBI.pm blib/lib/DBI.pm
cp lib/DBI/Const/GetInfoReturn.pm blib/lib/DBI/Const/GetInfoReturn.pm
cp DBIXS.h blib/arch/auto/DBI/DBIXS.h
cp lib/DBD/Sponge.pm blib/lib/DBD/Sponge.pm
cp Roadmap.pod blib/lib/Roadmap.pod
cp lib/DBI/Const/GetInfoType.pm blib/lib/DBI/Const/GetInfoType.pm
cp lib/DBI/W32ODBC.pm blib/lib/DBI/W32ODBC.pm
cp lib/DBI/DBD/Metadata.pm blib/lib/DBI/DBD/Metadata.pm
cp lib/DBI/Const/GetInfo/ODBC.pm blib/lib/DBI/Const/GetInfo/ODBC.pm
cp lib/DBI/ProfileDumper/Apache.pm blib/lib/DBI/ProfileDumper/Apache.pm
cp lib/Bundle/DBI.pm blib/lib/Bundle/DBI.pm
cp lib/DBI/Profile.pm blib/lib/DBI/Profile.pm
cp lib/DBI/ProfileDumper.pm blib/lib/DBI/ProfileDumper.pm
cp lib/DBD/File.pm blib/lib/DBD/File.pm
cp Driver.xst blib/arch/auto/DBI/Driver.xst
cp lib/DBI/ProxyServer.pm blib/lib/DBI/ProxyServer.pm
cp dbipport.h blib/arch/auto/DBI/dbipport.h
cp lib/DBD/NullP.pm blib/lib/DBD/NullP.pm
cp lib/DBI/DBD.pm blib/lib/DBI/DBD.pm
cp lib/Win32/DBIODBC.pm blib/lib/Win32/DBIODBC.pm
cp lib/DBI/PurePerl.pm blib/lib/DBI/PurePerl.pm
cp lib/DBD/ExampleP.pm blib/lib/DBD/ExampleP.pm
cp dbi_sql.h blib/arch/auto/DBI/dbi_sql.h
cp lib/DBI/ProfileData.pm blib/lib/DBI/ProfileData.pm
/usr/local/apps/perl-5.8.8-64_bit/bin/perl -p -e "s/~DRIVER~/Perl/g"
../Driver.xst > Perl.xsi
/usr/local/apps/perl-5.8.8-64_bit/bin/perl
/usr/local/apps/perl-5.8.8-64_bit/lib/5.8.8/ExtUtils/xsubpp -typemap
/usr/local/apps/perl-5.8.8-64_bit/lib/5.8.8/ExtUtils/typemap -typemap
typemap Perl.xs > Perl.xsc && mv Perl.xsc Perl.c
gcc -c -D_REENTRANT -L/usr/local/apps/db-4.4.20-64_bit/lib
-L/usr/local/apps/gdbm-1.8.3-64/lib -L/usr/local/lib
-I/usr/local/apps/db-4.4.20-64_bit/include
-I/usr/local/apps/gdbm-1.8.3-64/indlude -I/usr/local/include -mcpu=v9
-m64 -Wa,-xarch=v9 -DDEBUGGING -fno-strict-aliasing -pipe
-Wdeclaration-after-statement -I/usr/local/include -D_LARGEFILE_SOURCE
-D_FILE_OFFSET_BITS=64 -g -DVERSION=\"1.51\" -DXS_VERSION=\"1.51\"
-fPIC
"-I/usr/local/apps/perl-5.8.8-64_bit/lib/5.8.8/sun4-solaris- thread-multi-64/CORE"
-W -Wall -Wpointer-arith -Wbad-function-cast -Wno-comment
-Wno-sign-compare -Wno-cast-qual -Wmissing-noreturn
-Wno-unused-parameter Perl.c
In file included from /usr/include/netinet/in.h:41,
from
/usr/local/apps/perl-5.8.8-64_bit/lib/5.8.8/sun4-solaris-thr ead-multi-64/CORE/perl.h:925,
from DBIXS.h:19,
from Perl.xs:6:
/usr/include/sys/stream.h:307: error: parse error before "projid_t"
*** Error code 1
make: Fatal error: Command failed for target `Perl.o'
bkroeger (82) % /usr/local/apps/perl-5.8.8-64_bit/bin/perl -V
Summary of my perl5 (revision 5 version 8 subversion 8) configuration:
Platform:
osname=solaris, osvers=2.9, archname=sun4-solaris-thread-multi-64
uname='sunos doctor 5.9 generic_118558-20 sun4u sparc
sunw,sun-blade-100 '
config_args='-ds -e -Dprefix=/usr/local/apps/perl-5.8.8-64_bit -des
-Dcc=gcc -Doptimize=-g -Dusethreads -Dcf_email=bkroeger@sdsc.edu
-Duselargefiles -Uinstallusrbinperl -Dlocincpth=/usr/local/include
-Dloclibpth=/usr/local/lib -Duse64bitall -Dcc=gcc -Dccflags=
-L/usr/local/apps/db-4.4.20-64_bit/lib
-L/usr/local/apps/gdbm-1.8.3-64/lib -L/usr/local/lib
-I/usr/local/apps/db-4.4.20-64_bit/include
-I/usr/local/apps/gdbm-1.8.3-64/indlude -I/usr/local/include -Dldflags=
-R/usr/local/apps/db-4.4.20-64_bit/lib
-R/usr/local/apps/gdbm-1.8.3-64/lib -R/usr/local/lib
-L/usr/local/apps/db-4.4.20-64_bit/lib
-L/usr/local/apps/gdbm-1.8.3-64/lib -L/usr/local/lib'
hint=previous, useposix=true, d_sigaction=define
usethreads=define use5005threads=undef useithreads=define
usemultiplicity=define
useperlio=define d_sfio=undef uselargefiles=define usesocks=undef
use64bitint=define use64bitall=define uselongdouble=undef
usemymalloc=n, bincompat5005=undef
Compiler:
cc='gcc', ccflags ='-D_REENTRANT
-L/usr/local/apps/db-4.4.20-64_bit/lib
-L/usr/local/apps/gdbm-1.8.3-64/lib -L/usr/local/lib
-I/usr/local/apps/db-4.4.20-64_bit/include
-I/usr/local/apps/gdbm-1.8.3-64/indlude -I/usr/local/include -mcpu=v9
-m64 -Wa,-xarch=v9 -DDEBUGGING -fno-strict-aliasing -pipe
-Wdeclaration-after-statement -I/usr/local/include -D_LARGEFILE_SOURCE
-D_FILE_OFFSET_BITS=64',
optimize='-g',
cppflags='-D_REENTRANT -L/usr/local/apps/db-4.4.20-64_bit/lib
-L/usr/local/apps/gdbm-1.8.3-64/lib -L/usr/local/lib
-I/usr/local/apps/db-4.4.20-64_bit/include
-I/usr/local/apps/gdbm-1.8.3-64/indlude -I/usr/local/include -mcpu=v9
-m64 -Wa,-xarch=v9 -DDEBUGGING -fno-strict-aliasing -pipe
-Wdeclaration-after-statement -I/usr/local/include -D_REENTRANT
-L/usr/local/apps/db-4.4.20-64_bit/lib
-L/usr/local/apps/gdbm-1.8.3-64/lib -L/usr/local/lib
-I/usr/local/apps/db-4.4.20-64_bit/include
-I/usr/local/apps/gdbm-1.8.3-64/indlude -I/usr/local/include -mcpu=v9
-m64 -Wa,-xarch=v9 -DDEBUGGING -fno-strict-aliasing -pipe
-Wdeclaration-after-statement -I/usr/local/include -D_LARGEFILE_SOURCE
-D_FILE_OFFSET_BITS=64'
ccversion='', gccversion='4.1.1', gccosandvers=''
intsize=4, longsize=8, ptrsize=8, doublesize=8, byteorder=87654321
d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=16
ivtype='long', ivsize=8, nvtype='double', nvsize=8, Off_t='off_t',
lseeksize=8
alignbytes=8, prototype=define
Linker and Libraries:
ld='gcc', ldflags =' -R/usr/local/apps/db-4.4.20-64_bit/lib
-R/usr/local/apps/gdbm-1.8.3-64/lib -R/usr/local/lib
-L/usr/local/apps/db-4.4.20-64_bit/lib
-L/usr/local/apps/gdbm-1.8.3-64/lib -L/usr/local/lib -m64
-L/usr/lib/sparcv9 '
libpth=/usr/lib/sparcv9 /usr/local/lib /usr/lib /usr/ccs/lib
libs=-lsocket -lnsl -lgdbm -ldb -ldl -lm -lpthread -lc
perllibs=-lsocket -lnsl -ldl -lm -lpthread -lc
libc=/usr/lib/sparcv9/libc.so, so=so, useshrplib=false,
libperl=libperl.a
gnulibc_version=''
Dynamic Linking:
dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags=' '
cccdlflags='-fPIC', lddlflags=' -G -m64
-R/usr/local/apps/db-4.4.20-64_bit/lib
-R/usr/local/apps/gdbm-1.8.3-64/lib -R/usr/local/lib
-L/usr/local/apps/db-4.4.20-64_bit/lib
-L/usr/local/apps/gdbm-1.8.3-64/lib -L/usr/local/lib -L/usr/lib/sparcv9'
Characteristics of this binary (from libperl):
Compile-time options: DEBUGGING MULTIPLICITY PERL_IMPLICIT_CONTEXT
PERL_MALLOC_WRAP USE_64_BIT_ALL USE_64_BIT_INT
USE_ITHREADS USE_LARGE_FILES USE_PERLIO
USE_REENTRANT_API
Built under solaris
Compiled at Jun 21 2006 15:11:51
@INC:
/usr/local/apps/perl-5.8.8-64_bit/lib/5.8.8/sun4-solaris-thr ead-multi-64
/usr/local/apps/perl-5.8.8-64_bit/lib/5.8.8
/usr/local/apps/perl-5.8.8-64_bit/lib/site_perl/5.8.8/sun4-s olaris-thread-multi-64
/usr/local/apps/perl-5.8.8-64_bit/lib/site_perl/5.8.8
/usr/local/apps/perl-5.8.8-64_bit/lib/site_perl
.
Thanks for your help on this.
-Brad