← Back to team overview

dolfin team mailing list archive

Re: build issuse with dolfin on amd64 platform

 

Andre Massing wrote:
> Hi,
> 
> I recompiled all the fenics packages on my Ubuntu Jaunty amd64 and run
> into trouble during linking:
> 
> 
> mpic++ -o dolfin/libdolfin.so.0.9.2 -Wl,-rpath,/home/andre/local/lib 
> -pthread -Wl,--export-dynamic -shared -Wl,-soname=libdolfin.so.0 
> dolfin/ale/TransfiniteInterpolation.os dolfin/ale/HarmonicSmoothing.os
> [..]
> dolfin/quadrature/GaussianQuadrature.os dolfin/quadrature/Quadrature.os 
> dolfin/quadrature/LobattoQuadrature.os -L/home/andre/local/lib 
> -L/usr/lib/atlas -L/home/andre/local/lib -L/usr/lib/atlas 
> -L/usr/lib/atlas -L/usr/include/parmetis/lib -lxml2 -lpetscts 
> -lpetscsnes -lpetscksp-lpetscdm -lpetscmat -lpetscvec -lpetsc -lblas 
> -lumfpack -lamd -lgts -lm -lgthread-2.0 -lrt -lgmodule-2.0 -lglib-2.0 
> -lml -lifpack -lamesos-laztecoo -lteuchos -lepetra -lepetraext -lblas 
> -llapack -llapack -lblas -lcholmod -lamd -lcolamd -lparmetis -lmetis
> /usr/bin/ld: 
> /usr/lib/gcc/x86_64-linux-gnu/4.3.3/../../../../lib/libumfpack.a(umfpack_dl_free_numeric.o): 
> relocation R_X86_64_32 against `alocal symbol' can not be used when 
> making a shared object; recompile with -fPIC
> /usr/lib/gcc/x86_64-linux-gnu/4.3.3/../../../../lib/libumfpack.a: could 
> not read symbols: Bad value
> collect2: ld returned 1 exit status
> scons: *** [dolfin/libdolfin.so.0.9.2] Error 1
> 
> has anybody else also ran into this problem? If I understood it 
> correctly (which I do not assume :-)) I should recompile libumfpack.a 
> with -fPIC options, but I read somewhere that due to the GOT (global 
> offset table) in the library it is considered as a bad idea to proceed 
> in such a way with a *static* library... hmm :-/
> Any ideas?


I would suggest you try rebuilding suitesparse (or just umfpack) with
-fPIC. I have used this flag on a 64 bit machine in the past and not
seen anything go wrong with respect to this global access table.

Harish


References