RE: DBI-1.50 | make error on Solaris 10



Hi Jonathan,



I got the issue fixed:



Resolution: Execute mkheaders that is present in the location "/usr/local/lib/gcc-lib/sparc-sun-solaris2.10/3.3.2/install-tools"

After this run make, it resolved the issue.

Thanks for your response.





Regards,
Arun Kumar
¬ Sapient
'Vayu' Block
Salarpuria GR Tech Park
#137, White Field Road
Bangalore, India
Desk: +91 (0) 80 4104 7235
Mobile: +91 (0) 9886140752
E-mail: aboopathy@xxxxxxxxxxx

________________________________

From: Jonathan Leffler [mailto:jonathan.leffler@xxxxxxxxx]
Sent: Sunday, July 15, 2007 6:48 AM
To: Arun Kumar Boopathy
Cc: DBI Users Mailing List
Subject: Re: DBI-1.50 | make error on Solaris 10



I've cc'd dbi-users@xxxxxxxx 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 < aboopathy@xxxxxxxxxxx <mailto:aboopathy@xxxxxxxxxxx> > wrote:

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/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O -DVERSION=\"1.50\" -DXS_VERSION=\"1.50\" -fPIC "-I/apps/iw-home/iw-perl/lib/CORE" -W -Wall -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 -v



Summary of my perl5 (revision 5.0 version 8 subversion 2) configuration:

Platform:

osname=solaris, osvers=2.6, archname=sun4-solaris-multi

uname='sunos newton 5.6 generic_105181-23 sun4u sparc sunw,ultrasparc-iii-engine '

config_args='-de'

hint=recommended, useposix=true, d_sigaction=define

usethreads=undef use5005threads=undef useithreads=undef usemultiplicity=define

useperlio=define d_sfio=undef uselargefiles=define usesocks=undef

use64bitint=undef use64bitall=undef uselongdouble=undef

usemymalloc=n, bincompat5005=undef

Compiler:

cc='gcc', ccflags ='-DUSE_HAS_SEED_EXPLICIT -fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64',

optimize='-O',

cppflags='-DUSE_HAS_SEED_EXPLICIT -fno-strict-aliasing -I/usr/local/include'

ccversion='', gccversion='2.95.2 19991024 (release)', gccosandvers='solaris2.6'

intsize=4, longsize=4, ptrsize=4, doublesize=8, byteorder=4321

d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=16

ivtype='long', ivsize=4, nvtype='double', nvsize=8, Off_t='off_t', lseeksize=8

alignbytes=8, prototype=define

Linker and Libraries:

ld='gcc', ldflags =' -L/usr/local/lib '

libpth=/usr/local/lib /usr/lib /usr/ccs/lib

libs=-lsocket -lnsl -ldl -lm -lc

perllibs=-lsocket -lnsl -ldl -lm -lc

libc=/lib/libc.so, so=so, useshrplib=false, libperl=libperl.a

gnulibc_version=''

Dynamic Linking:

dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags=' -Wl,-E'

cccdlflags='-fPIC', lddlflags=' -Wl,-E -G -L/usr/local/lib'





Characteristics of this binary (from libperl):

Compile-time options: MULTIPLICITY USE_LARGE_FILES PERL_IMPLICIT_CONTEXT

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.






--
Jonathan Leffler <jonathan.leffler@xxxxxxxxx > #include <disclaimer.h>
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."



Relevant Pages

  • Problem of DBI build
    ... I installed Oracle Application Server 4.0.8.2 included perl module. ... I need to installe DBI and DBD::Oracle module. ... You can install them any time after installing the DBI. ... line 318: error 1705: Function prototypes are an ANSI feature. ...
    (perl.dbi.users)
  • Problem of DBI build
    ... I installed Oracle Application Server 4.0.8.2 included perl module. ... I need to installe DBI and DBD::Oracle module. ... You can install them any time after installing the DBI. ... line 318: error 1705: Function prototypes are an ANSI feature. ...
    (perl.dbi.users)
  • Installing DBI and DBD::TSM
    ... I am having trouble installing DBI. ... This is perl, v5.8.0 built for aix-thread-multi ... blib/lib/DB ... You can install them any time after installing the DBI. ...
    (perl.dbi.users)
  • Problem of installing DBI packages
    ... my curent configuration of HP Unix system is as below: ... When i do>>perl makefile.PL, ... You can install them any time after installing the DBI. ...
    (perl.dbi.users)
  • Re: attempt to build 64 bit on Solaris fails
    ... > libraries needed to link with a 64-bit Tk. ... We were running a 32-bit version of Perl ... > Each section below is a summary of the commands used to install it. ...
    (comp.lang.perl.tk)