On Thu, 20 Nov 2003, Daniel Berger wrote: > > From: Andy Dougherty [mailto:perlbug-followup@perl.org] > > I don't have gcc-3.3 to test (my Solaris gcc installation is > > still 2.8.1), but I think the following patch should fix it: > > > > --- perl-5.8.2/hints/solaris_2.sh Mon Oct 27 12:27:29 2003 > > +++ perl-5.8.2-andy/hints/solaris_2.sh Thu Nov 20 09:24:38 2003 > > @@ -516,14 +516,13 @@ > > loclibpth="/usr/lib/sparcv9 $loclibpth" > > ccflags="$ccflags -mcpu=v9 -m64" > > if test X`getconf XBS5_LP64_OFF64_CFLAGS > > 2>/dev/null` != X; then > > + # This adds in -Wa,-xarch=v9. I suspect > > that's superfluous, > > + # since the -m64 above should do that > > already. Someone > > + # with gcc-3.x.x, please test with gcc -v. > > A.D. 20-Nov-2003 > > ccflags="$ccflags -Wa,`getconf > > XBS5_LP64_OFF64_CFLAGS 2>/dev/null`" > > fi > > - # no changes to ld flags, as (according to man ld): > > - # > > - # There is no specific option that tells ld to > > link 64-bit > > - # objects; the class of the first object that > > gets processed > > - # by ld determines whether it is to perform a > > 32-bit or a > > - # 64-bit link edit. > > + ldflags="$ldflags -m64" > > + lddlflags="$lddlflags -m64" > > ;; > > *) > > ccflags="$ccflags `getconf > > XBS5_LP64_OFF64_CFLAGS 2>/dev/null`" > > > > > > Hope this helps, > > > > -- > > Andy Dougherty doughera@lafayette.edu > > > Thanks Andy. I made the changes you suggested. We're getting further, > but now it's choking on 'B': > LD_RUN_PATH="" gcc -m64 -L/usr/lib/sparcv9 -L/usr/local/lib C.o -o > ../../../lib/auto/B/C/C.so > Undefined first referenced > symbol in file > Perl_safesysmalloc C.o > Perl_Tmarkstack_ptr_ptr C.o Oh. This one's my fault. Try changing the line > > + lddlflags="$lddlflags -m64" in hints/solaris_2.sh to > > + lddlflags="$lddlflags -G -m64" (I think that's the right flag for gcc on Solaris using Sun's ld.) Andy Dougherty doughera@lafayette.eduThread Previous | Thread Next