Make problem Building 64 bit Perl 5.8.8 from source on Solaris 10 with gcc 3.4.6
[email protected] ("Vachon, Frederick P (Fred) A5IT") Thu, 20 Mar 2008 11:02:52 -0400
| Newsgroups | perl.64bit |
|---|---|
| Message-ID | <245942CFEA09A845BA48256414B385B602AB7756@risemb002.internal.cigna.com> |
------_=_NextPart_001_01C88A9B.7855CB1F
Content-Type: text/plain;
charset=us-ascii
Content-Transfer-Encoding: quoted-printable
Hi,
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
=66or 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=3D/home/fred/perl_5.8.8 -Dcc=3Dgcc -Duse64bitall
-Aldflags=3D"-mcpu=3Dv9 -m64" -Alddlflags=3D"-mcpu=3Dv9 -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 =3D gcc -DPERL_CORE -c -mcpu=3Dv9 -m64 -Wa,-xarch=3Dv9
-fno-strict-aliasing -pipe -Wdeclaration-after-statement -I/usr/ll
gcc -m64 -mcpu=3Dv9 -m64 -L/usr/local/lib -o miniperl \
miniperlmain.o opmini.o libperl.a=20
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)
=66mod libperl.a(pp.o)
sqrt libperl.a(pp.o)
atan2 libperl.a(pp.o)
=66loor 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=3D'-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 - [email protected]
=20
------------------------------------------------------------------------------
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. Copyrigh=
t=
2008 CIGNA
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D
------_=_NextPart_001_01C88A9B.7855CB1F
Content-Type: text/html;
charset=us-ascii
Content-Transfer-Encoding: quoted-printable
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<HTML>
<HEAD>
<META HTTP-EQUIV=3D"Content-Type" CONTENT=3D"text/html; charset=3Dus-ascii">
<META NAME=3D"Generator" CONTENT=3D"MS Exchange Server version 6.0.6619.12">
<TITLE>Make problem Building 64 bit Perl 5.8.8 from source on Solaris 10 with=
=
gcc 3.4.6</TITLE>
</HEAD>
<BODY>
<!-- Converted from text/rtf format -->
<P><FONT SIZE=3D2 FACE=3D"Arial">Hi,</FONT>
</P>
<P><FONT SIZE=3D2 FACE=3D"Arial">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 ge=
t=
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 ad=
d=
the DBI and DBD::ORACLE modules.</FONT></P>
<P><FONT SIZE=3D2 FACE=3D"Arial">I am running Configure this way. I am =
taking all the defaults except I remove directory /usr/lib as mentioned in th=
e=
Solaris README notes.</FONT></P>
<P><FONT SIZE=3D2 FACE=3D"Arial">sh ./Configure =
-Dprefix=3D/home/fred/perl_5.8.8 -Dcc=3Dgcc -Duse64bitall =
-Aldflags=3D"-mcpu=3Dv9 -m64" -Alddlflags=3D"-mcpu=3Dv9 -m64 =
-G"</FONT></P>
<P><FONT SIZE=3D2 FACE=3D"Arial">This is my LD_LIBRARY_PATH and PATH</FONT>
<BR><FONT SIZE=3D2 FACE=3D"r_ansi">LD_LIBRARY_PATH =
/usr/local/lib:/usr/ccs/lib:/usr/sfw/lib:/usr/dt/lib:/usr/openwin/lib:/usr/sh=
are/lib:$ORACLE_HOME/lib32</FONT>
<BR><FONT SIZE=3D2 FACE=3D"r_ansi">PATH =
/bin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/ccs/bin:/usr/sfw/bin:/usr/openwin=
/bin:/etc:$ORACLE_HOME/bin:/usr/ucb</FONT>
</P>
<P><FONT SIZE=3D2 FACE=3D"Arial">This is the error from make:</FONT>
<BR><FONT SIZE=3D2 FACE=3D"r_ansi">CCCMD =3D gcc -DPERL_CORE -c =
-mcpu=3Dv9 -m64 -Wa,-xarch=3Dv9 -fno-strict-aliasing -pipe =
-Wdeclaration-after-statement -I/usr/ll</FONT></P>
<P><FONT SIZE=3D2 FACE=3D"r_ansi">gcc -m64 -mcpu=3Dv9 -m64 =
-L/usr/local/lib -o miniperl \</FONT>
<BR><FONT SIZE=3D2 =
=46ACE=3D"r_ansi">  =
; =
miniperlmain.o opmini.o libperl.a </FONT>
<BR><FONT SIZE=3D2 =
=46ACE=3D"r_ansi">Undefined &n=
bsp; &=
nbsp;=
first referenced</FONT>
<BR><FONT SIZE=3D2 =
=46ACE=3D"r_ansi"> symbol  =
; &nbs=
p; =
in file</FONT>
<BR><FONT SIZE=3D2 =
=46ACE=3D"r_ansi">cos &n=
bsp; &=
nbsp; =
libperl.a(pp.o)</FONT>
<BR><FONT SIZE=3D2 =
=46ACE=3D"r_ansi">exp &n=
bsp; &=
nbsp; =
libperl.a(pp.o)</FONT>
<BR><FONT SIZE=3D2 =
=46ACE=3D"r_ansi">log &n=
bsp; &=
nbsp; =
libperl.a(pp.o)</FONT>
<BR><FONT SIZE=3D2 =
=46ACE=3D"r_ansi">pow &n=
bsp; &=
nbsp; =
libperl.a(pp.o)</FONT>
<BR><FONT SIZE=3D2 =
=46ACE=3D"r_ansi">sin &n=
bsp; &=
nbsp; =
libperl.a(pp.o)</FONT>
<BR><FONT SIZE=3D2 =
=46ACE=3D"r_ansi">ceil &=
nbsp; =
=
libperl.a(pp.o)</FONT>
<BR><FONT SIZE=3D2 =
=46ACE=3D"r_ansi">fmod &=
nbsp; =
=
libperl.a(pp.o)</FONT>
<BR><FONT SIZE=3D2 =
=46ACE=3D"r_ansi">sqrt &=
nbsp; =
=
libperl.a(pp.o)</FONT>
<BR><FONT SIZE=3D2 =
=46ACE=3D"r_ansi">atan2 =
 =
; =
libperl.a(pp.o)</FONT>
<BR><FONT SIZE=3D2 =
=46ACE=3D"r_ansi">floor =
 =
; =
libperl.a(pp.o)</FONT>
<BR><FONT SIZE=3D2 FACE=3D"r_ansi">ld: fatal: Symbol referencing errors. No =
output written to miniperl</FONT>
<BR><FONT SIZE=3D2 FACE=3D"r_ansi">collect2: ld returned 1 exit status</FONT>
<BR><FONT SIZE=3D2 FACE=3D"r_ansi">make: *** [miniperl] Error 1</FONT>
</P>
<P><FONT SIZE=3D2 FACE=3D"Arial">These are some of the things I have tried so=
=
=66ar to fix this:</FONT>
<BR><FONT SIZE=3D2 FACE=3D"Arial">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=3D'-lsocket -lnsl -ldl -lm -lc'. That didn't work - same make =
error.</FONT></P>
<P><FONT SIZE=3D2 FACE=3D"Arial">2. So I tried another suggestion from =
the INSTALL notes and tried not using nm extraction with the -Uusenm option =
=66or configure. I started over again with distclean but that didn't =
work either.</FONT></P>
<P><FONT SIZE=3D2 FACE=3D"Arial">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.</FONT></P>
<P><FONT SIZE=3D2 FACE=3D"Arial">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.</FONT></P>
<P><FONT SIZE=3D2 FACE=3D"Arial">Cheers! Fred - =
[email protected]</FONT>
</P>
<BR>
<P><FONT SIZE=3D2 FACE=3D"Arial"></FONT>
</P>
</BODY>
</HTML>
<P>--------------------------------------------------------------------------=
----<br>
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. Copyrigh=
t=
2008 CIGNA<br>
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D<br>
</P>
------_=_NextPart_001_01C88A9B.7855CB1F--