RE: Make problem Building 64 bit Perl 5.8.8 from source on Solaris 10 with gcc 3.4.6

2008-03-21 Thread Vachon, Frederick P (Fred) A5IT
Sorry but the information I gave about the make test problem was
incorrect.  The symbol that it is looking for is nanosleep not nanod.
I can't find nanod on my system at all - or in the source for
Time::HiRes.  That's odd.  Not surprising that it failed to find nanod -
but odd that it thought it should.

So I'm still trying to find a way to fix this and get Perl installed.
ld.so.1: perl: fatal: relocation error: file
../lib/auto/Time/HiRes/HiRes.so: symbol nanosleep: referenced symbol not
found

Killed

-Original Message-
From: Jonathan Leffler [mailto:[EMAIL PROTECTED] 
Sent: Thursday, March 20, 2008 9:54 PM
To: Vachon, Frederick P (Fred) A5IT
Cc: DBI Users Mailing List
Subject: Re: Make problem Building 64 bit Perl 5.8.8 from source
on Solaris 10 with gcc 3.4.6


Here's another 'perl -V' - 5.8.8 on Solaris 10 with GCC 3.4.6 -
justifying my other email saying that an update to GCC was not crucial.

Summary of my perl5 (revision 5 version 8 subversion 8)
configuration:
  Platform:
osname=solaris, osvers=2.10, archname=sun4-solaris-64
uname='sunos black 5.10 generic_120011-14 sun4u sparc
sunw,ultra-4 solaris '
config_args=''
hint=recommended, useposix=true, d_sigaction=define
usethreads=undef use5005threads=undef useithreads=undef
usemultiplicity=undef
useperlio=define d_sfio=undef uselargefiles=define
usesocks=undef
use64bitint=define use64bitall=define uselongdouble=undef
usemymalloc=n, bincompat5005=undef
  Compiler:
cc='/usr/gcc/v3.4.6/bin/gcc -m64 -mcpu=v9', ccflags
='-fno-strict-aliasing -pipe -Wdeclaration-a
fter-statement -mcpu=v9 -m64 -D_LARGEFILE_SOURCE
-D_FILE_OFFSET_BITS=64 -DPERL_USE_SAFE_PUTENV -DPERL_USE_SAFE_PUTENV
-DPERL_USE_SAFE_PUTENV -DPERL_USE_SAFE_PUTENV -DPERL_USE_SAFE_PUTENV
-DPERL_USE_SAFE_PUTENV -DPERL_USE_SAFE_PUTENV',
optimize='-O',
cppflags='-fno-strict-aliasing -pipe
-Wdeclaration-after-statement'
ccversion='', gccversion='3.4.6', gccosandvers='solaris2.10'
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='/usr/gcc/v3.4.6/bin/gcc -m64 -mcpu=v9', ldflags =' -m64
'
libpth=/usr/lib /usr/ccs/lib
libs=-lsocket -lnsl -ldl -lm -lc
perllibs=-lsocket -lnsl -ldl -lm -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'


Characteristics of this binary (from libperl):
  Compile-time options: PERL_MALLOC_WRAP PERL_USE_SAFE_PUTENV
USE_64_BIT_ALL USE_64_BIT_INT
USE_LARGE_FILES
USE_PERLIO
  Built under solaris
  Compiled at Mar 20 2008 11:38:45
  @INC:
lib
/usr/perl/v5.8.8-gcc-3.4.6/lib/5.8.8/sun4-solaris-64
/usr/perl/v5.8.8-gcc-3.4.6/lib/5.8.8

/usr/perl/v5.8.8-gcc-3.4.6/lib/site_perl/5.8.8/sun4-solaris-64
/usr/perl/v5.8.8-gcc-3.4.6/lib/site_perl/5.8.8
/usr/perl/v5.8.8-gcc-3.4.6/lib/site_perl
.


On Thu, Mar 20, 2008 at 12:31 PM, Vachon, Frederick P (Fred)
A5IT [EMAIL PROTECTED] wrote:


Thank you very much for your help!  Having the output
from a successful
build I was able to see what was wrong or missing in my
config.sh file.
I needed to include the sparcv9 64 bit directories -
mainly
/usr/lib/sparcv9 and /usr/ccs/lib/sparcv9 to config.sh.
The defaults
from Configure don't work.




I always do a manual configure - though I usually spend a lot of
time just accepting the defaults.

Tip: if you plan to have Perl installed in /usr/perl/v5.x.y,
create both /usr/perl/v5.x.y and /usr/perl/v5.x.y/bin -- it saves having
Perl ask you are you sure questions.

The Perl configured above failed 4 tests, all related to NDBM.
That doesn't surprise me or worry me.

 



I was able to get through the make but ran into a
problem with make test
that I'm trying to figure out.  Thanks again.

ext/Time/HiRes/t/HiResld.so.1: perl:
fatal:
relocation error: file ../lib/auto/Time/HiRes/HiRes.so:
symbol nanod

Re: Make problem Building 64 bit Perl 5.8.8 from source on Solaris 10 with gcc 3.4.6

2008-03-21 Thread Jonathan Leffler
On Fri, Mar 21, 2008 at 6:41 AM, Vachon, Frederick P (Fred) A5IT 
[EMAIL PROTECTED] wrote:

  Sorry but the information I gave about the make test problem was
 incorrect.  The symbol that it is looking for is nanosleep not nanod.   I
 can't find nanod on my system at all - or in the source for Time::HiRes.
 That's odd.  Not surprising that it failed to find nanod - but odd that it
 thought it should.
 So I'm still trying to find a way to fix this and get Perl installed.

 ld.so.1: perl: fatal: relocation error: file
 ../lib/auto/Time/HiRes/HiRes.so: symbol nanosleep: referenced symbol not
 found



Ah - nanosleep is definitely around normally - in either or both of
libposix4.so or librt.so.  I've not checked for other places, but the hints
file in ext/Time/HiRes/hints/solaris_2.sh clearly identifies these libraries
and 'nm -g /usr/lib/librt.so /usr/lib/libposix4.so | grep nanosleep | grep
-v UNDEF' shows them present.

If you've got neither of those libaries on the machine, get them installed.

You could try rebuilding Time::HiRes manually in the source tree (the code
is in ext/Time/HiRes under the perl-5.8.8 directory).  The tricky bit is
getting your new Perl to do it.  This seemed to work for me y'day:

../../../perl -I../../../lib Makefile.PL


 Killed

  -Original Message-
 *From:* Jonathan Leffler [mailto:[EMAIL PROTECTED]
 *Sent:* Thursday, March 20, 2008 9:54 PM
 *To:* Vachon, Frederick P (Fred) A5IT
 *Cc:* DBI Users Mailing List
 *Subject:* Re: Make problem Building 64 bit Perl 5.8.8 from source on
 Solaris 10 with gcc 3.4.6

 Here's another 'perl -V' - 5.8.8 on Solaris 10 with GCC 3.4.6 - justifying
 my other email saying that an update to GCC was not crucial.

 Summary of my perl5 (revision 5 version 8 subversion 8) configuration:
   Platform:
 osname=solaris, osvers=2.10, archname=sun4-solaris-64
 uname='sunos black 5.10 generic_120011-14 sun4u sparc sunw,ultra-4
 solaris '
 config_args=''
 hint=recommended, useposix=true, d_sigaction=define
 usethreads=undef use5005threads=undef useithreads=undef
 usemultiplicity=undef
 useperlio=define d_sfio=undef uselargefiles=define usesocks=undef
 use64bitint=define use64bitall=define uselongdouble=undef
 usemymalloc=n, bincompat5005=undef
   Compiler:
 cc='/usr/gcc/v3.4.6/bin/gcc -m64 -mcpu=v9', ccflags
 ='-fno-strict-aliasing -pipe -Wdeclaration-a
 fter-statement -mcpu=v9 -m64 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64
 -DPERL_USE_SAFE_PUTENV -DPERL_USE_SAFE_PUTENV -DPERL_USE_SAFE_PUTENV
 -DPERL_USE_SAFE_PUTENV -DPERL_USE_SAFE_PUTENV -DPERL_USE_SAFE_PUTENV
 -DPERL_USE_SAFE_PUTENV',
 optimize='-O',
 cppflags='-fno-strict-aliasing -pipe -Wdeclaration-after-statement'
 ccversion='', gccversion='3.4.6', gccosandvers='solaris2.10'
 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='/usr/gcc/v3.4.6/bin/gcc -m64 -mcpu=v9', ldflags =' -m64 '
 libpth=/usr/lib /usr/ccs/lib
 libs=-lsocket -lnsl -ldl -lm -lc
 perllibs=-lsocket -lnsl -ldl -lm -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'


 Characteristics of this binary (from libperl):
   Compile-time options: PERL_MALLOC_WRAP PERL_USE_SAFE_PUTENV
 USE_64_BIT_ALL USE_64_BIT_INT USE_LARGE_FILES
 USE_PERLIO
   Built under solaris
   Compiled at Mar 20 2008 11:38:45
   @INC:
 lib
 /usr/perl/v5.8.8-gcc-3.4.6/lib/5.8.8/sun4-solaris-64
 /usr/perl/v5.8.8-gcc-3.4.6/lib/5.8.8
 /usr/perl/v5.8.8-gcc-3.4.6/lib/site_perl/5.8.8/sun4-solaris-64
 /usr/perl/v5.8.8-gcc-3.4.6/lib/site_perl/5.8.8
 /usr/perl/v5.8.8-gcc-3.4.6/lib/site_perl
 .

 On Thu, Mar 20, 2008 at 12:31 PM, Vachon, Frederick P (Fred) A5IT 
 [EMAIL PROTECTED] wrote:

  Thank you very much for your help!  Having the output from a successful
  build I was able to see what was wrong or missing in my config.sh file.
  I needed to include the sparcv9 64 bit directories - mainly
  /usr/lib/sparcv9 and /usr/ccs/lib/sparcv9 to config.sh.  The defaults
  from Configure don't work.
 


 I always do a manual configure - though I usually spend a lot of time just
 accepting the defaults.

 Tip: if you plan to have Perl installed in /usr/perl/v5.x.y, create both
 /usr/perl/v5.x.y and /usr/perl/v5.x.y/bin -- it saves having Perl ask you
 are you sure questions.

 The Perl configured above failed 4 tests, all related to NDBM.  That
 doesn't surprise me or worry me.



 
  I was able to get through the make but ran into a problem with make test
  that I'm trying to figure out.  Thanks again.
 
  ext/Time

Re: Make problem Building 64 bit Perl 5.8.8 from source on Solaris 10 with gcc 3.4.6

2008-03-21 Thread Jonathan Leffler
On Fri, Mar 21, 2008 at 10:21 AM, Vachon, Frederick P (Fred) A5IT 
[EMAIL PROTECTED] wrote:

  Thanks for getting back.  I'm kinda new at this.  I found that I needed
 to add the rt library to libs variable -lrt.  So I did that and rebuild.  So
 I'm almost there.  I get 2 errors on the make test.  Do you need to have
 100% on make test to install?  Some notes say (probably harmless) ?


If the stuff you need is working, I'd probably go with the install despite
the failures.  However, if something subsequently goes wrong - especially
with something like getppid() - then you need to remember that there were
some test failures.

For my build, there were 4 failures related to NDBM.  I'm not worried
because I don't normally use that.

 Failed Test Stat Wstat Total Fail Failed List of Failed


 ---

 ../lib/ExtUtils/t/Embed.t 9 9 100.00% 1-9

 op/getppid.t 3 1 33.33% 3

 79 tests and 198 subtests skipped.

 Failed 2/988 test scripts, 99.80% okay. 10/116518 subtests failed, 99.99%okay.


 ---

 HERE IS MORE DETAIL

 ./perl op/getppid.t

 1..3

 ok 1 # ppid1=19577

 ok 2 # ppid2=20926, ppid1!=ppid2

 not ok 3 # ppid2=1


 --

 ./perl -I../lib ../lib/ExtUtils/t/Embed.t

 1..9

 Note (probably harmless): No library found for -lsocket

 Note (probably harmless): No library found for -lnsl

 Note (probably harmless): No library found for -ldl

 Note (probably harmless): No library found for -lm

 Note (probably harmless): No library found for -lc

 Note (probably harmless): No library found for -lrt

 # gcc -m64 -o embed_test -I.. -mcpu=v9 -m64 -Wa,-xarch=v9
 -fno-strict-aliasing -pipe -Wdeclaration-after-statement -I/usr/local/in

 Undefined first referenced

 symbol in file

 cos ../libperl.a(pp.o)

 exp ../libperl.a(pp.o)

 log ../libperl.a(pp.o)

 pow ../libperl.a(pp.o)

 sin ../libperl.a(pp.o)

 ceil ../libperl.a(pp.o)

 fmod ../libperl.a(pp.o)

 sqrt ../libperl.a(pp.o)

 atan2 ../libperl.a(pp.o)

 floor ../libperl.a(pp.o)

 ld: fatal: Symbol referencing errors. No output written to embed_test

 collect2: ld returned 1 exit status

 not ok 1

 # embed_test = ./embed_test

 not ok 9 # system returned -1


 [...megasnip...]


-- 
Jonathan Leffler [EMAIL PROTECTED] #include disclaimer.h
Guardian of DBD::Informix - v2008.0229 - http://dbi.perl.org
Blessed are we who can laugh at ourselves, for we shall never cease to be
amused.


Make problem Building 64 bit Perl 5.8.8 from source on Solaris 10 with gcc 3.4.6

2008-03-20 Thread Vachon, Frederick P (Fred) A5IT
Hi, 
I'm new to this list.  I looked over the various Perl mailing lists and
decided on this one although my problem isn't directly related to DBI.
But the reason I'm trying to compile Perl from source as 64 bit is to
use the DBI module and DBD:Oracle (and if I ever can get Perl to Build
I'll probably need help with the DBI!).
I am trying to build a 64 bit Perl from source on my home directory (as
non root) on Solaris 10. I downloaded the most current stable version of
Perl 5.8.8 from CPAN. I'm using the Solaris gcc compiler in
/usr/local/bin/gcc which is version 3.4.6. I get through the Configure
step OK but fail when trying to run make. The tail of the output is
listed below. I have searched the internet for others with this problem
but have not been able to find a solution. I have read the README file
for Solaris, the INSTALL notes and have looked through the hints script.
I am not a sysadmin so my options are limited - I cannot install a
different gcc compiler or make any changes to the system directories. My
objective is to have my own version of Perl so I can add the DBI and
DBD::ORACLE modules.
I am running Configure this way. I am taking all the defaults except I
remove directory /usr/lib as mentioned in the Solaris README notes.
sh ./Configure -Dprefix=/home/fred/perl_5.8.8 -Dcc=gcc -Duse64bitall
-Aldflags=-mcpu=v9 -m64 -Alddlflags=-mcpu=v9 -m64 -G
This is my LD_LIBRARY_PATH and PATH 
LD_LIBRARY_PATH
/usr/local/lib:/usr/ccs/lib:/usr/sfw/lib:/usr/dt/lib:/usr/openwin/lib:/u
sr/share/lib:$ORACLE_HOME/lib32 
PATH
/bin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/ccs/bin:/usr/sfw/bin:/usr/op
enwin/bin:/etc:$ORACLE_HOME/bin:/usr/ucb 
This is the error from make: 
CCCMD = gcc -DPERL_CORE -c -mcpu=v9 -m64 -Wa,-xarch=v9
-fno-strict-aliasing -pipe -Wdeclaration-after-statement -I/usr/ll
gcc -m64 -mcpu=v9 -m64 -L/usr/local/lib -o miniperl \ 
miniperlmain.o opmini.o libperl.a 
Undefined first referenced 
symbol in file 
cos libperl.a(pp.o) 
exp libperl.a(pp.o) 
log libperl.a(pp.o) 
pow libperl.a(pp.o) 
sin libperl.a(pp.o) 
ceil libperl.a(pp.o) 
fmod libperl.a(pp.o) 
sqrt libperl.a(pp.o) 
atan2 libperl.a(pp.o) 
floor libperl.a(pp.o) 
ld: fatal: Symbol referencing errors. No output written to miniperl 
collect2: ld returned 1 exit status 
make: *** [miniperl] Error 1 
These are some of the things I have tried so far to fix this: 
1. From the INSTALL notes I found reference to the Missing Undefined
Symbols problem. So I did a make distclean and started over. When config
offered an opportunity to edit config.sh I went in and saw that libs
variable was empty. I changed it to be libs='-lsocket -lnsl -ldl -lm
-lc'. That didn't work - same make error.
2. So I tried another suggestion from the INSTALL notes and tried not
using nm extraction with the -Uusenm option for configure. I started
over again with distclean but that didn't work either.
3. So I'm really stuck - I've tried many other things - mainly playing
around with directory paths when prompted running Configure, in
config.sh, and in PATH and LD_LIBRARY_PATH - adding the sparv9
directories... anything I could think of - but no luck.
Any help would be greatly appreciated. I have been struggling with this
problem for several days and cannot get past the make problem. Somehow
it's not finding the math library - or it's getting confused between
32bit and 64bit libraries - but I don't know how to fix it.
Cheers! Fred 


--
CONFIDENTIALITY NOTICE: If you have received this email in error, please 
immediately notify the sender by e-mail at the address shown.  This email 
transmission may contain confidential information.  This information is 
intended only for the use of the individual(s) or entity to whom it is intended 
even if addressed incorrectly.  Please delete it from your files if you are not 
the intended recipient.  Thank you for your compliance.  Copyright 2008 CIGNA
==


Fwd: Make problem Building 64 bit Perl 5.8.8 from source on Solaris 10 with gcc 3.4.6

2008-03-20 Thread Jonathan Leffler
Darn the mailing list!

-- Forwarded message --
From: Jonathan Leffler [EMAIL PROTECTED]
Date: Thu, Mar 20, 2008 at 10:20 AM
Subject: Re: Make problem Building 64 bit Perl 5.8.8 from source on Solaris
10 with gcc 3.4.6
To: Vachon, Frederick P (Fred) A5IT [EMAIL PROTECTED]




On Thu, Mar 20, 2008 at 10:03 AM, Fred Vachon, Frederick P (Fred) A5IT 
[EMAIL PROTECTED] wrote:

 I'm new to this list.  I looked over the various Perl mailing lists and
 decided on this one although my problem isn't directly related to DBI.
 But the reason I'm trying to compile Perl from source as 64 bit is to
 use the DBI module and DBD:Oracle (and if I ever can get Perl to Build
 I'll probably need help with the DBI!).
 I am trying to build a 64 bit Perl from source on my home directory (as
 non root) on Solaris 10. I downloaded the most current stable version of
 Perl 5.8.8 from CPAN. I'm using the Solaris gcc compiler in
 /usr/local/bin/gcc which is version 3.4.6. I get through the Configure
 step OK but fail when trying to run make. The tail of the output is
 listed below. I have searched the internet for others with this problem
 but have not been able to find a solution. I have read the README file
 for Solaris, the INSTALL notes and have looked through the hints script.
 I am not a sysadmin so my options are limited - I cannot install a
 different gcc compiler or make any changes to the system directories. My
 objective is to have my own version of Perl so I can add the DBI and
 DBD::ORACLE modules.
 I am running Configure this way. I am taking all the defaults except I
 remove directory /usr/lib as mentioned in the Solaris README notes.
 sh ./Configure -Dprefix=/home/fred/perl_5.8.8 -Dcc=gcc -Duse64bitall
 -Aldflags=-mcpu=v9 -m64 -Alddlflags=-mcpu=v9 -m64 -G
 This is my LD_LIBRARY_PATH and PATH
 LD_LIBRARY_PATH
 /usr/local/lib:/usr/ccs/lib:/usr/sfw/lib:/usr/dt/lib:/usr/openwin/lib:/u
 sr/share/lib:$ORACLE_HOME/lib32
 PATH
 /bin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/ccs/bin:/usr/sfw/bin:/usr/op
 enwin/bin:/etc:$ORACLE_HOME/bin:/usr/ucb
 This is the error from make:
 CCCMD = gcc -DPERL_CORE -c -mcpu=v9 -m64 -Wa,-xarch=v9
 -fno-strict-aliasing -pipe -Wdeclaration-after-statement -I/usr/ll
 gcc -m64 -mcpu=v9 -m64 -L/usr/local/lib -o miniperl \
 miniperlmain.o opmini.o libperl.a
 Undefined first referenced
 symbol in file
 cos libperl.a(pp.o)
 exp libperl.a(pp.o)
 log libperl.a(pp.o)
 pow libperl.a(pp.o)
 sin libperl.a(pp.o)
 ceil libperl.a(pp.o)
 fmod libperl.a(pp.o)
 sqrt libperl.a(pp.o)
 atan2 libperl.a(pp.o)
 floor libperl.a(pp.o)
 ld: fatal: Symbol referencing errors. No output written to miniperl
 collect2: ld returned 1 exit status
 make: *** [miniperl] Error 1



Those are maths library functions - the link line needs to include -lm.

I'm not clear why it doesn't - I never had this problem on my Solaris boxes.

You might need to replace /usr/lib with /usr/lib/sparcv9.

Here's the 'perl -V' output from a successful  64-bit Perl (with threading
and multiplicity) built on Solaris 8 with GCC  4.0.2 back in 2006:

Summary of my perl5 (revision 5 version 8 subversion 8) configuration:
  Platform:
osname=solaris, osvers=2.8, archname=sun4-solaris-thread-multi-64
uname='sunos anubis 5.8 generic_117350-16 sun4u sparc sunw,ultra-5_10
solaris '
config_args='-Duse64bitall -Duseithreads -Dusethreads -Dusemultiplicity
-Dcc=gcc -m64'
hint=recommended, 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 -m64', ccflags ='-D_REENTRANT -mcpu=v9 -m64 -Wa,-xarch=v9
-fno-strict-aliasing -pipe -Wd
eclaration-after-statement -I/usr/gnu64/include -D_LARGEFILE_SOURCE
-D_FILE_OFFSET_BITS=64',
optimize='-O',
cppflags='-D_REENTRANT -mcpu=v9 -m64 -Wa,-xarch=v9 -fno-strict-aliasing
-pipe -Wdeclaration-afte
r-statement -I/usr/gnu64/include'
ccversion='', gccversion='4.0.2', 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 -m64', ldflags ='-m64 -L/usr/lib/sparcv9 -L/usr/gnu64/lib
-L/usr/ccs/lib/sparcv9 '
libpth=/usr/lib/sparcv9 /usr/gnu64/lib /usr/ccs/lib/sparcv9
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 -L/usr/lib/sparcv9
-L/usr/gnu64/lib -L/usr/ccs/lib/sparc
v9'


Characteristics of this binary

RE: Make problem Building 64 bit Perl 5.8.8 from source on Solaris 10 with gcc 3.4.6

2008-03-20 Thread Rutherdale, Will
I'm not an Oracle specialist, but here's one tip.

You *can* install your own gcc.  Same for Perl, and DBI libraries.  If
you follow the README directions you will see there is a configure
script and you can get 'make install' to install the software in a
location of your own choosing.  Then you just have to adjust your PATH
environment variable to point to the software you have installed.

Most packages let you set a 'prefix' value that specifies where to
install.  If you make it somewhere under your home directory, then you
don't need root permissions for 'make install'.

-Will


 -Original Message-
 From: Vachon, Frederick P (Fred) A5IT [mailto:[EMAIL PROTECTED]
 Sent: Thursday 20 March 2008 13:04
 To: dbi-users@perl.org
 Subject: Make problem Building 64 bit Perl 5.8.8 from source
 on Solaris 10 with gcc 3.4.6


 Hi,
 I'm new to this list.  I looked over the various Perl mailing
 lists and
 decided on this one although my problem isn't directly related to DBI.
 But the reason I'm trying to compile Perl from source as 64 bit is to
 use the DBI module and DBD:Oracle (and if I ever can get Perl to Build
 I'll probably need help with the DBI!).
 I am trying to build a 64 bit Perl from source on my home
 directory (as
 non root) on Solaris 10. I downloaded the most current stable
 version of
 Perl 5.8.8 from CPAN. I'm using the Solaris gcc compiler in
 /usr/local/bin/gcc which is version 3.4.6. I get through the Configure
 step OK but fail when trying to run make. The tail of the output is
 listed below. I have searched the internet for others with
 this problem
 but have not been able to find a solution. I have read the README file
 for Solaris, the INSTALL notes and have looked through the
 hints script.
 I am not a sysadmin so my options are limited - I cannot install a
 different gcc compiler or make any changes to the system
 directories. My
 objective is to have my own version of Perl so I can add the DBI and
 DBD::ORACLE modules.

. . .



 - - - - - Appended by Scientific Atlanta, a Cisco company - - - - - 
This e-mail and any attachments may contain information which is confidential,
proprietary, privileged or otherwise protected by law. The information is solely
intended for the named addressee (or a person responsible for delivering it to
the addressee). If you are not the intended recipient of this message, you are
not authorized to read, print, retain, copy or disseminate this message or any
part of it. If you have received this e-mail in error, please notify the sender
immediately by return e-mail and delete it from your computer.



Re: Make problem Building 64 bit Perl 5.8.8 from source on Solaris 10 with gcc 3.4.6

2008-03-20 Thread Richard T Malafa
Upgrade your gcc and get the sun code generator if you want it from SUN... 
 It's version 4.2.0  read the url.
http://www.sun.com/download/products.xml?id=43fb4c75
Check out the cool tools also on that page..

As an example HPUX also does both as a duo package.
http://hpux.cs.utah.edu/hppd/cgi-bin/search?package=ondescription=onterm=gccSearch=Search
They're at 4.2.3 for gcc and also 4.2.3 for the binutils package

I got both but I got to get the HPs fixed first..

Rich

• '•..• '•. º .• '•. .• '•. •. .• '•. º
“Anything that doesn’t eat you today is saving you for tomorrow.”

Computer Sciences Corporation 
Registered Office: 2100 East Grand Avenue, El Segundo California 90245, 
USA
Registered in USA No: C-489-59


This is a PRIVATE message. If you are not the intended recipient, please 
delete without copying and kindly advise us by e-mail of the mistake in 
delivery. 
NOTE: Regardless of content, this e-mail shall not operate to bind CSC to 
any order or other contract unless pursuant to explicit written agreement 
or government initiative expressly permitting the use of e-mail for such 
purpose.





Vachon, Frederick P (Fred)  A5IT [EMAIL PROTECTED] 
03/20/2008 01:03 PM

To
dbi-users@perl.org
cc

Subject
Make problem Building 64 bit Perl 5.8.8 from source on Solaris 10 with gcc 
3.4.6






Hi, 
I'm new to this list.  I looked over the various Perl mailing lists and
decided on this one although my problem isn't directly related to DBI.
But the reason I'm trying to compile Perl from source as 64 bit is to
use the DBI module and DBD:Oracle (and if I ever can get Perl to Build
I'll probably need help with the DBI!).
I am trying to build a 64 bit Perl from source on my home directory (as
non root) on Solaris 10. I downloaded the most current stable version of
Perl 5.8.8 from CPAN. I'm using the Solaris gcc compiler in
/usr/local/bin/gcc which is version 3.4.6. I get through the Configure
step OK but fail when trying to run make. The tail of the output is
listed below. I have searched the internet for others with this problem
but have not been able to find a solution. I have read the README file
for Solaris, the INSTALL notes and have looked through the hints script.
I am not a sysadmin so my options are limited - I cannot install a
different gcc compiler or make any changes to the system directories. My
objective is to have my own version of Perl so I can add the DBI and
DBD::ORACLE modules.
I am running Configure this way. I am taking all the defaults except I
remove directory /usr/lib as mentioned in the Solaris README notes.
sh ./Configure -Dprefix=/home/fred/perl_5.8.8 -Dcc=gcc -Duse64bitall
-Aldflags=-mcpu=v9 -m64 -Alddlflags=-mcpu=v9 -m64 -G
This is my LD_LIBRARY_PATH and PATH 
LD_LIBRARY_PATH
/usr/local/lib:/usr/ccs/lib:/usr/sfw/lib:/usr/dt/lib:/usr/openwin/lib:/u
sr/share/lib:$ORACLE_HOME/lib32 
PATH
/bin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/ccs/bin:/usr/sfw/bin:/usr/op
enwin/bin:/etc:$ORACLE_HOME/bin:/usr/ucb 
This is the error from make: 
CCCMD = gcc -DPERL_CORE -c -mcpu=v9 -m64 -Wa,-xarch=v9
-fno-strict-aliasing -pipe -Wdeclaration-after-statement -I/usr/ll
gcc -m64 -mcpu=v9 -m64 -L/usr/local/lib -o miniperl \ 
miniperlmain.o opmini.o libperl.a 
Undefined first referenced 
symbol in file 
cos libperl.a(pp.o) 
exp libperl.a(pp.o) 
log libperl.a(pp.o) 
pow libperl.a(pp.o) 
sin libperl.a(pp.o) 
ceil libperl.a(pp.o) 
fmod libperl.a(pp.o) 
sqrt libperl.a(pp.o) 
atan2 libperl.a(pp.o) 
floor libperl.a(pp.o) 
ld: fatal: Symbol referencing errors. No output written to miniperl 
collect2: ld returned 1 exit status 
make: *** [miniperl] Error 1 
These are some of the things I have tried so far to fix this: 
1. From the INSTALL notes I found reference to the Missing Undefined
Symbols problem. So I did a make distclean and started over. When config
offered an opportunity to edit config.sh I went in and saw that libs
variable was empty. I changed it to be libs='-lsocket -lnsl -ldl -lm
-lc'. That didn't work - same make error.
2. So I tried another suggestion from the INSTALL notes and tried not
using nm extraction with the -Uusenm option for configure. I started
over again with distclean but that didn't work either.
3. So I'm really stuck - I've tried many other things - mainly playing
around with directory paths when prompted running Configure, in
config.sh, and in PATH and LD_LIBRARY_PATH - adding the sparv9
directories... anything I could think of - but no luck.
Any help would be greatly appreciated. I have been struggling with this
problem for several days and cannot get past the make

Re: Make problem Building 64 bit Perl 5.8.8 from source on Solaris 10 with gcc 3.4.6

2008-03-20 Thread Jonathan Leffler
On Thu, Mar 20, 2008 at 10:39 AM, Richard T Malafa [EMAIL PROTECTED] wrote:

 Upgrade your gcc and get the sun code generator if you want it from SUN...
  It's version 4.2.0  read the url.
 http://www.sun.com/download/products.xml?id=43fb4c75
 Check out the cool tools also on that page..


It's not necessary - GCC 3.4.6 is fine.

I've just rebuilt Perl 5.8.8 with GCC 3.4.6 in 64-bit mode.  It was more
exasperating than I expected because some monkey added a hint in
hints/solaris_2.sh to use getconf to add arguments to the linker - search
for an if statement that contains:

ccflags=$ccflags -Wa,`getconf XBS5_LP64_OFF64_CFLAGS 2/dev/null`

Eliminate it - it comments that it isn't sure it is necessary, and it is
actually counter productive.
I also got 7 (count them!) copies of -DPERL_USE_SAFE_PUTENV because a
config.over got extended each time I ran the configure.  Grump!

-- 
Jonathan Leffler [EMAIL PROTECTED] #include disclaimer.h
Guardian of DBD::Informix - v2008.0229 - http://dbi.perl.org
Blessed are we who can laugh at ourselves, for we shall never cease to be
amused.


RE: Make problem Building 64 bit Perl 5.8.8 from source on Solaris 10 with gcc 3.4.6

2008-03-20 Thread Vachon, Frederick P (Fred) A5IT
Thank you very much for your help!  Having the output from a successful
build I was able to see what was wrong or missing in my config.sh file.
I needed to include the sparcv9 64 bit directories - mainly
/usr/lib/sparcv9 and /usr/ccs/lib/sparcv9 to config.sh.  The defaults
from Configure don't work.

I was able to get through the make but ran into a problem with make test
that I'm trying to figure out.  Thanks again.

ext/Time/HiRes/t/HiResld.so.1: perl: fatal:
relocation error: file ../lib/auto/Time/HiRes/HiRes.so: symbol nanod

../ext/Time/HiRes/t/HiRes.t: overall time allowed for tests (60s)
exceeded!
Use of uninitialized value in subtraction (-) at
../ext/Time/HiRes/t/HiRes.t line 592.
Terminated
make[2]: *** [_test_tty] Error 143
Terminated
make[1]: *** [_test] Error 143
Terminated
make: *** [test] Error 143
Terminated



-Original Message-
From: Jonathan Leffler [mailto:[EMAIL PROTECTED] 
Sent: Thursday, March 20, 2008 1:21 PM
To: DBI Users Mailing List
Subject: Fwd: Make problem Building 64 bit Perl 5.8.8 from source on
Solaris 10 with gcc 3.4.6


Darn the mailing list!

-- Forwarded message --
From: Jonathan Leffler [EMAIL PROTECTED]
Date: Thu, Mar 20, 2008 at 10:20 AM
Subject: Re: Make problem Building 64 bit Perl 5.8.8 from source on
Solaris 10 with gcc 3.4.6
To: Vachon, Frederick P (Fred) A5IT [EMAIL PROTECTED]




On Thu, Mar 20, 2008 at 10:03 AM, Fred Vachon, Frederick P (Fred) A5IT 
[EMAIL PROTECTED] wrote:

 I'm new to this list.  I looked over the various Perl mailing lists 
 and decided on this one although my problem isn't directly related to 
 DBI. But the reason I'm trying to compile Perl from source as 64 bit 
 is to use the DBI module and DBD:Oracle (and if I ever can get Perl to

 Build I'll probably need help with the DBI!). I am trying to build a 
 64 bit Perl from source on my home directory (as non root) on Solaris 
 10. I downloaded the most current stable version of Perl 5.8.8 from 
 CPAN. I'm using the Solaris gcc compiler in /usr/local/bin/gcc which 
 is version 3.4.6. I get through the Configure step OK but fail when 
 trying to run make. The tail of the output is listed below. I have 
 searched the internet for others with this problem but have not been 
 able to find a solution. I have read the README file for Solaris, the 
 INSTALL notes and have looked through the hints script. I am not a 
 sysadmin so my options are limited - I cannot install a different gcc 
 compiler or make any changes to the system directories. My objective 
 is to have my own version of Perl so I can add the DBI and DBD::ORACLE

 modules. I am running Configure this way. I am taking all the defaults

 except I remove directory /usr/lib as mentioned in the Solaris README 
 notes. sh ./Configure -Dprefix=/home/fred/perl_5.8.8 -Dcc=gcc 
 -Duse64bitall -Aldflags=-mcpu=v9 -m64 -Alddlflags=-mcpu=v9 -m64 -G
 This is my LD_LIBRARY_PATH and PATH
 LD_LIBRARY_PATH

/usr/local/lib:/usr/ccs/lib:/usr/sfw/lib:/usr/dt/lib:/usr/openwin/lib:/u
 sr/share/lib:$ORACLE_HOME/lib32
 PATH

/bin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/ccs/bin:/usr/sfw/bin:/usr/op
 enwin/bin:/etc:$ORACLE_HOME/bin:/usr/ucb
 This is the error from make:
 CCCMD = gcc -DPERL_CORE -c -mcpu=v9 -m64 -Wa,-xarch=v9
 -fno-strict-aliasing -pipe -Wdeclaration-after-statement -I/usr/ll
 gcc -m64 -mcpu=v9 -m64 -L/usr/local/lib -o miniperl \
 miniperlmain.o opmini.o libperl.a
 Undefined first referenced
 symbol in file
 cos libperl.a(pp.o)
 exp libperl.a(pp.o)
 log libperl.a(pp.o)
 pow libperl.a(pp.o)
 sin libperl.a(pp.o)
 ceil libperl.a(pp.o)
 fmod libperl.a(pp.o)
 sqrt libperl.a(pp.o)
 atan2 libperl.a(pp.o)
 floor libperl.a(pp.o)
 ld: fatal: Symbol referencing errors. No output written to miniperl
 collect2: ld returned 1 exit status
 make: *** [miniperl] Error 1



Those are maths library functions - the link line needs to include -lm.

I'm not clear why it doesn't - I never had this problem on my Solaris
boxes.

You might need to replace /usr/lib with /usr/lib/sparcv9.

Here's the 'perl -V' output from a successful  64-bit Perl (with
threading and multiplicity) built on Solaris 8 with GCC  4.0.2 back in
2006:

Summary of my perl5 (revision 5 version 8 subversion 8) configuration:
  Platform:
osname=solaris, osvers=2.8, archname=sun4-solaris-thread-multi-64
uname='sunos anubis 5.8 generic_117350-16 sun4u sparc
sunw,ultra-5_10 solaris '
config_args='-Duse64bitall -Duseithreads -Dusethreads
-Dusemultiplicity -Dcc=gcc -m64'
hint=recommended, 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 -m64', ccflags ='-D_REENTRANT -mcpu=v9 -m64 -Wa,-xarch=v9
-fno-strict-aliasing -pipe -Wd eclaration-after-statement
-I/usr/gnu64/include

Re: Make problem Building 64 bit Perl 5.8.8 from source on Solaris 10 with gcc 3.4.6

2008-03-20 Thread Jonathan Leffler
List/Util MIME/Base64 NDBM_File ODBM_File Opcode POSIX PerlIO/encoding
PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog
Time/HiRes Unicode/Normalize XS/APItest XS/Typemap attrs re threads
threads/shared Errno
gmtime_r_proto=0
i_systime=define
i_systimek=
i_systimes=define
i_time=
i_utime=define
known_extensions=B ByteLoader Cwd DB_File Data/Dumper Devel/DProf
Devel/PPPort Devel/Peek Digest/MD5 Encode Fcntl File/Glob Filter/Util/Call
GDBM_File I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 NDBM_File
ODBM_File Opcode POSIX PerlIO/encoding PerlIO/scalar PerlIO/via SDBM_File
Socket Storable Sys/Hostname Sys/Syslog Thread Time/HiRes Unicode/Normalize
XS/APItest XS/Typemap attrs re threads threads/shared
localtime_r_proto=0
timeincl=/usr/include/sys/time.h
timetype=time_t
Black JL:

If you get anything significantly different, it might be informative and
relevant.  OTOH, it may not help in the slightest.


 -Original Message-
 From: Jonathan Leffler [mailto:[EMAIL PROTECTED]
 Sent: Thursday, March 20, 2008 1:21 PM
 To: DBI Users Mailing List
 Subject: Fwd: Make problem Building 64 bit Perl 5.8.8 from source on
 Solaris 10 with gcc 3.4.6


 Darn the mailing list!

 -- Forwarded message --
 From: Jonathan Leffler [EMAIL PROTECTED]
 Date: Thu, Mar 20, 2008 at 10:20 AM
 Subject: Re: Make problem Building 64 bit Perl 5.8.8 from source on
 Solaris 10 with gcc 3.4.6
 To: Vachon, Frederick P (Fred) A5IT [EMAIL PROTECTED]




 On Thu, Mar 20, 2008 at 10:03 AM, Fred Vachon, Frederick P (Fred) A5IT 
 [EMAIL PROTECTED] wrote:

  I'm new to this list.  I looked over the various Perl mailing lists
  and decided on this one although my problem isn't directly related to
  DBI. But the reason I'm trying to compile Perl from source as 64 bit
  is to use the DBI module and DBD:Oracle (and if I ever can get Perl to

  Build I'll probably need help with the DBI!). I am trying to build a
  64 bit Perl from source on my home directory (as non root) on Solaris
  10. I downloaded the most current stable version of Perl 5.8.8 from
  CPAN. I'm using the Solaris gcc compiler in /usr/local/bin/gcc which
  is version 3.4.6. I get through the Configure step OK but fail when
  trying to run make. The tail of the output is listed below. I have
  searched the internet for others with this problem but have not been
  able to find a solution. I have read the README file for Solaris, the
  INSTALL notes and have looked through the hints script. I am not a
  sysadmin so my options are limited - I cannot install a different gcc
  compiler or make any changes to the system directories. My objective
  is to have my own version of Perl so I can add the DBI and DBD::ORACLE

  modules. I am running Configure this way. I am taking all the defaults

  except I remove directory /usr/lib as mentioned in the Solaris README
  notes. sh ./Configure -Dprefix=/home/fred/perl_5.8.8 -Dcc=gcc
  -Duse64bitall -Aldflags=-mcpu=v9 -m64 -Alddlflags=-mcpu=v9 -m64 -G
  This is my LD_LIBRARY_PATH and PATH
  LD_LIBRARY_PATH
 
 /usr/local/lib:/usr/ccs/lib:/usr/sfw/lib:/usr/dt/lib:/usr/openwin/lib:/u
  sr/share/lib:$ORACLE_HOME/lib32
  PATH
 
 /bin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/ccs/bin:/usr/sfw/bin:/usr/op
  enwin/bin:/etc:$ORACLE_HOME/bin:/usr/ucb
  This is the error from make:
  CCCMD = gcc -DPERL_CORE -c -mcpu=v9 -m64 -Wa,-xarch=v9
  -fno-strict-aliasing -pipe -Wdeclaration-after-statement -I/usr/ll
  gcc -m64 -mcpu=v9 -m64 -L/usr/local/lib -o miniperl \
  miniperlmain.o opmini.o libperl.a
  Undefined first referenced
  symbol in file
  cos libperl.a(pp.o)
  exp libperl.a(pp.o)
  log libperl.a(pp.o)
  pow libperl.a(pp.o)
  sin libperl.a(pp.o)
  ceil libperl.a(pp.o)
  fmod libperl.a(pp.o)
  sqrt libperl.a(pp.o)
  atan2 libperl.a(pp.o)
  floor libperl.a(pp.o)
  ld: fatal: Symbol referencing errors. No output written to miniperl
  collect2: ld returned 1 exit status
  make: *** [miniperl] Error 1



 Those are maths library functions - the link line needs to include -lm.

 I'm not clear why it doesn't - I never had this problem on my Solaris
 boxes.

 You might need to replace /usr/lib with /usr/lib/sparcv9.

 Here's the 'perl -V' output from a successful  64-bit Perl (with
 threading and multiplicity) built on Solaris 8 with GCC  4.0.2 back in
 2006:

 Summary of my perl5 (revision 5 version 8 subversion 8) configuration:
  Platform:
osname=solaris, osvers=2.8, archname=sun4-solaris-thread-multi-64
uname='sunos anubis 5.8 generic_117350-16 sun4u sparc
 sunw,ultra-5_10 solaris '
config_args='-Duse64bitall -Duseithreads -Dusethreads
 -Dusemultiplicity -Dcc=gcc -m64'
hint=recommended, 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 -m64