dolfin team mailing list archive
-
dolfin team
-
Mailing list archive
-
Message #07458
Re: amd and umfpack
This is the details.
I have got the following linking error, when compiling Poisson's equation demo (cpp):
[rfarahi@alteran cpp]$ make
`pkg-config --variable=compiler dolfin` -o demo main.o `pkg-config --cflags dolfin` `pkg-config --libs dolfin` "-L/home/rfarahi/math/AMD/Lib -lamd"
/home/rfarahi/math/UMFPACK/Lib/libumfpack.a(umf_l_free.o)(.text+0x12): In function `umf_l_free':
: undefined reference to `amd_free'
/home/rfarahi/math/UMFPACK/Lib/libumfpack.a(umf_l_malloc.o)(.text+0x28): In function `umf_l_malloc':
: undefined reference to `amd_malloc' ...
The configuration I have used to install dolfin:
./configure --enable-petsc --with-petsc-dir=/home/rfarahi/math/petsc-2.3.3-p11 --disable-pydolfin --with-umfpack-include=/home/rfarahi/math/UMFPACK/Include --
with-umfpack-lib=/home/rfarahi/math/UMFPACK/Lib --with-amd-lib=/home/rfarahi/math/AMD/Lib --prefix=/home/rfarahi/math/dolfin-0.7.2/linux-opt --disable-shared --with-boost=/usr/local
This is the dolfin.pc on my system:
pkg-config --libs dolfin:
-Wl,-rpath,/home/rfarahi/math/petsc-2.3.3-p11/lib/linux-gnu-c-debug -pthread -Wl,--export-dynamic -L/home/rfarahi/math/dolfin-0.7.2/linux-opt/lib -L/home/rfarahi/math/petsc-2.3.3-p11/lib/linux-gnu-c-debug -L/usr/local/lib -L/home/rfarahi/math/AMD/Lib -L/home/rfarahi/math/UMFPACK/Lib -ldolfin -lpetscts -lpetscsnes -lpetscksp -lpetscdm -lpetscmat -lpetscvec -lpetsc -lxml2 -lz -lm -lamd -lumfpack -lblas -lgts -lgthread-2.0 -lgmodule-2.0 -ldl -lglib-2.0
You see that -lamd appears before -lumfpack.
I changed the dolfin.pc manually, and it works well. But, maybe a check point can be added to do it automaticlly, if the order is not correct.
Bests,
Reza
----- Original Message ----
From: Johannes Ring <johannr@xxxxxxxxx>
To: dolfin mailing list <dolfin-dev@xxxxxxxxxx>
Sent: Monday, April 14, 2008 9:30:23 AM
Subject: Re: [DOLFIN-dev] amd and umfpack
On Mon, April 14, 2008 Reza Farrahi Moghaddam:
> It seems that the linking process (cpp demos) is very sensitive to the
> order of lamd and lumfpack. Is it possible that the dolfin installer
> automatically set the correct order (-lumfpack -lamd) in the dolfin.pc?
The order of -lumfpack and -lamd is defined in umfpack.pc. What is the
contents of this file on your system? The Libs section in mine looks like
this:
Libs: -L/usr/lib/atlas -lblas -L/usr/lib -lumfpack -L/usr/lib -lamd
Seems to be the order you refer to as the "correct order". I tried
changing the order and it still compiles without any problems on my
system.
Can you perhaps provide some more information on your problem? What is the
error message you get?
Maybe you have multiple AMD libraries on your system?
Johannes
_______________________________________________
DOLFIN-dev mailing list
DOLFIN-dev@xxxxxxxxxx
http://www.fenics.org/mailman/listinfo/dolfin-dev
__________________________________________________________________
Looking for the perfect gift? Give the gift of Flickr!
http://www.flickr.com/gift/