[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: hidden symbol `__canonicalize_funcptr_for_compare' in



On Mon, Aug 23, 2010 at 10:11:54PM -0400, John David Anglin wrote:
> > On Tue, Aug 17, 2010 at 04:55:43PM -0400, John David Anglin wrote:
> > > > make[4]: Entering directory `/build/buildd-atlas_3.8.3-21-hppa-fWTDBW/atlas-3.8.3/build/atlas-base/lib'
> > > > ld  -shared -soname libblas.so.3gf -o atlas/libblas.so.3gf.0 \
> > > >        --whole-archive atlas/libblas.a \
> > > >            --no-whole-archive -L/usr/lib/gcc/hppa-linux-gnu/4.4.3/ -lgfortran -lgcc_s -lpthread -lm -lc
> > > 
> > > I believe that the above command is the problem.  It needs -lgcc after
> > > -lgcc_s on hppa.  This will resolve __canonicalize_funcptr_for_compare,
> > > various millicode routines and __sync builtins.
> > > 
> > > This would happen automatically if gcc/g++ was used to link the library
> > > instead of ld.  
> > 
> > fyi, s/-lgcc_s/-lgcc_s -lgcc/ produced the same results.
> > 
> > Here's the atlas build log:
> >   http://people.debian.org/~dannf/bugs/592885/atlas.buildlog
> 
> I should have have said that -lgcc_s -lgcc also has to appear after the
> -lc.
> 
> However, I see other link problems in build.  For example,
> 
> ld  -shared -soname libatlas.so.3gf -o libatlas.so.3gf.0 \
>         --whole-archive libatlas.a --no-whole-archive -lc -lm
> libatlas.a(ATL_lcm.o): In function `ATL_lcm':
> (.text+0xa8): warning: undefined reference to `$$divI'
> 
> This arises from using ld directly instead of gcc/g++/gfortran.

Yeah, I was just trying to verify the theory to wave a dead chicken
for the atlas maintainers, but it is clear from you and Carlos' mails
that they shouldn't be using ld directly. I've reassigned the bug.

-- 
dann frazier


Reply to: