Re: DBI-1.50 | make error on Solaris 10
am 15.07.2007 03:17:34 von jonathan.leffler------=_Part_14485_18465677.1184462254937
Content-Type: text/plain; charset=WINDOWS-1252; format=flowed
Content-Transfer-Encoding: quoted-printable
Content-Disposition: inline
I've cc'd dbi-users@perl.org again - I intended to previously...
That's a nuisance. It usually means something is confused about which
headers are where - it could be GCC or Perl or something else.
Have you installed any other C-based modules since you created Perl with
gcc?
OK - you've got Perl 5.8.2 (5.8.8 has been out several years), and it was
built with GCC 2.95 (they've stopped maintaining the GCC 3.x line of
compilers). And the Perl was built in 2003, on Solaris 2.6 (not Solaris 10=
,
which is where you are running it) - so you didn't build it yourself in
response to my suggestion.
I wonder which version of GCC you have. I suspect you need to get a GCC
2.95 compiler for Solaris 2.6 - you probably have a more recent one. Or,
you need to build Perl 5.8.8 with your current C compiler. I'd do the
latter - it will be easier in the long run. Especially for me.
The most reliable versions of Perl are those you build with the tools on
your machine. The next most reliable ones are those for which you get the
matching tool set for the pre-build Perl you get. The further your current
toolset is from the version used to build Perl, the more dramatic the
problems become.
On 7/14/07, Arun Kumar Boopathy
>
> Hi Jonathan,
>
>
>
> Iam getting the following error when I install DBI-1.50 module:
>
>
>
> */apps/iw-home/iw-perl/bin/perl Makefile.PL *
>
> * *
>
> Creating DBI::PurePerl test variant: t/zvpp_01basics.t
>
> [...much snippage...]
>
> Checking if your kit is complete...
>
> Looks good
>
>
>
> I see you're using perl 5.008002 on sun4-solaris-multi, 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
>
> *make*
>
> * *
>
> /apps/iw-home/iw-perl/bin/perl "-MExtUtils::Command" -e mkpath
> blib/lib/DBI
>
> rm -f blib/lib/DBI/Changes.pm
>
> cp Changes blib/lib/DBI/Changes.pm
>
> /apps/iw-home/iw-perl/bin/perl "-MExtUtils::Command" -e mkpath
> blib/lib/DBI
>
> rm -f blib/lib/DBI/Roadmap.pm
> [...]
>
> cp dbi_sql.h blib/arch/auto/DBI/dbi_sql.h
>
> cp lib/DBI/ProfileData.pm blib/lib/DBI/ProfileData.pm
>
> /apps/iw-home/iw-perl/bin/perl -p -e "s/~DRIVER~/Perl/g" ./Driver.xst >
> Perl.xsi
>
> /apps/iw-home/iw-perl/bin/perl /apps/iw-home/iw-perl/lib/ExtUtils/xsubpp
> -typemap /apps/iw-home/iw-perl/lib/ExtUtils/typemap -typemap typemap
> Perl.xs > Perl.xsc && mv Perl.xsc Perl.c
>
> gcc -c -DUSE_HAS_SEED_EXPLICIT -fno-strict-aliasing -I/usr/local/includ=
e
> -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=3D64 -O -DVERSION=3D\"1.50\"
> -DXS_VERSION=3D\"1.50\" -fPIC "-I/apps/iw-home/iw-perl/lib/CORE" -W -Wal=
l
> -Wpointer-arith -Wbad-function-cast -Wno-comment -Wno-sign-compare
> -Wno-cast-qual -DDBI_NO_THREADS Perl.c
>
> In file included from /usr/include/sys/signal.h:34,
>
> from /usr/include/signal.h:26,
>
> from /apps/iw-home/iw-perl/lib/CORE/unixish.h:107,
>
> from /apps/iw-home/iw-perl/lib/CORE/perl.h:1969,
>
> from DBIXS.h:19,
>
> from Perl.xs:5:
>
> /usr/include/sys/siginfo.h:259: error: parse error before "ctid_t"
>
> /usr/include/sys/siginfo.h:292: error: parse error before '}' token
>
> /usr/include/sys/siginfo.h:294: error: parse error before '}' token
>
> /usr/include/sys/siginfo.h:390: error: parse error before "ctid_t"
>
> [...more snippage...]
>
>
> Perl.c:1096: warning: unused parameter `cv'
>
> make: *** [Perl.o] Error 1
>
> * *
>
> *Perl =96v*
>
> * *
>
> Summary of my perl5 (revision 5.0 version 8 subversion 2) configuration:
>
> Platform:
>
> osname=3Dsolaris, osvers=3D2.6, archname=3Dsun4-solaris-multi
>
> uname=3D'sunos newton 5.6 generic_105181-23 sun4u sparc
> sunw,ultrasparc-iii-engine '
>
> config_args=3D'-de'
>
> hint=3Drecommended, useposix=3Dtrue, d_sigaction=3Ddefine
>
> usethreads=3Dundef use5005threads=3Dundef useithreads=3Dundef
> usemultiplicity=3Ddefine
>
> useperlio=3Ddefine d_sfio=3Dundef uselargefiles=3Ddefine usesocks=3Du=
ndef
>
> use64bitint=3Dundef use64bitall=3Dundef uselongdouble=3Dundef
>
> usemymalloc=3Dn, bincompat5005=3Dundef
>
> Compiler:
>
> cc=3D'gcc', ccflags =3D'-DUSE_HAS_SEED_EXPLICIT -fno-strict-aliasing
> -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=3D64',
>
> optimize=3D'-O',
>
> cppflags=3D'-DUSE_HAS_SEED_EXPLICIT -fno-strict-aliasing
> -I/usr/local/include'
>
> ccversion=3D'', gccversion=3D'2.95.2 19991024 (release)', gccosandver=
s=3D'
> solaris2.6'
>
> intsize=3D4, longsize=3D4, ptrsize=3D4, doublesize=3D8, byteorder=3D4=
321
>
> d_longlong=3Ddefine, longlongsize=3D8, d_longdbl=3Ddefine, longdblsiz=
e=3D16
>
> ivtype=3D'long', ivsize=3D4, nvtype=3D'double', nvsize=3D8, Off_t=3D'=
off_t',
> lseeksize=3D8
>
> alignbytes=3D8, prototype=3Ddefine
>
> Linker and Libraries:
>
> ld=3D'gcc', ldflags =3D' -L/usr/local/lib '
>
> libpth=3D/usr/local/lib /usr/lib /usr/ccs/lib
>
> libs=3D-lsocket -lnsl -ldl -lm -lc
>
> perllibs=3D-lsocket -lnsl -ldl -lm -lc
>
> libc=3D/lib/libc.so, so=3Dso, useshrplib=3Dfalse, libperl=3Dlibperl.a
>
> gnulibc_version=3D''
>
> Dynamic Linking:
>
> dlsrc=3Ddl_dlopen.xs, dlext=3Dso, d_dlsymun=3Dundef, ccdlflags=3D' -W=
l,-E'
>
> cccdlflags=3D'-fPIC', lddlflags=3D' -Wl,-E -G -L/usr/local/lib'
>
>
>
>
>
> Characteristics of this binary (from libperl):
>
> Compile-time options: MULTIPLICITY USE_LARGE_FILES PERL_IMPLICIT_CONTEX=
T
>
> Built under solaris
>
> Compiled at Nov 14 2003 17:42:31
>
> @INC:
>
> /apps/iw-home/iw-perl/lib
>
> /apps/iw-home/iw-perl/site/lib
>
> /apps/iw-home/iw-perl/vendor/lib
>
Oh, and for whatever it is worth, a default build of GCC 4.2.0 needs about =
2
GB disk space in the object directory, plus the space for the source code -
on Solaris 10 at any rate. Also, there's a stunt you have to pull to get
the Korn shell used by configure/make, and the build fails if you don't get
that sorted. I forget the details - I will look sometime for them since I
had to sort the same problem out for earlier GCC 4.x compilers too.
--=20
Jonathan Leffler
Guardian of DBD::Informix - v2007.0226 - http://dbi.perl.org
"Blessed are we who can laugh at ourselves, for we shall never cease to be
amused."
------=_Part_14485_18465677.1184462254937--