Is anybody able to help? Even sending a configure script that do work (for you) with mumps and getfem_para_level=2 would be nice...
On Mon, Jun 23, 2008 at 9:00 AM, Daniele Bettella <[EMAIL PROTECTED]> wrote: > I'm sending this problem back to getfem-users; the actual error I get is > below. > > /bin/sh ../libtool --tag=CXX --mode=link mpicxx > -I/home/bettella/trilfem/trilinos/include -D GETFEM_PARA_LEVEL=2 > -I/home/bettella/trilfem/mumps/include -O3 -L/home/bettella/trilfem/blacs > -lblacs -lblacsF77 -lblacsC -lblacs -lblacsC > -L/home/bettella/trilfem/trilinos/lib -lepetra -ltriutils -laztecoo > -lteuchos -L/home/bettella/trilfem/metis -lmetis -lparmetis > -L/home/bettella/trilfem/scalapack -lscalapack > -L/home/bettella/trilfem/mumps/lib -ldmumps -lcmumps -ldmumps -lsmumps > -lzmumps -lpord -llapack -o elastostatic elastostatic.o ../src/ > libgetfem.la -lm -L/home/bettella/trilfem/mumps/lib -lcmumps -ldmumps > -lsmumps -lzmumps -lpord -lblas > mpicxx -I/home/bettella/trilfem/trilinos/include -D GETFEM_PARA_LEVEL=2 > -I/home/bettella/trilfem/mumps/include -O3 -o .libs/elastostatic > elastostatic.o -L/home/bettella/trilfem/blacs > -L/home/bettella/trilfem/trilinos/lib -L/home/bettella/trilfem/metis > -L/home/bettella/trilfem/scalapack -L/home/bettella/trilfem/mumps/lib > ../src/.libs/libgetfem -lblacsF77 -lblacs -lblacsC -lepetra -ltriutils > -laztecoo -lteuchos -lmetis -lparmetis -lscalapack -llapack > /home/bettella/trilfem/openmpi/lib/libmpi_cxx.so > -L/usr/local/Gruppi/Marcuzzi/src/Build/gcc-4.1.2-obj/x86_64-unknown-linux-gnu/libstdc++-v3/src > -L/usr/local/Gruppi/Marcuzzi/src/Build/gcc-4.1.2-obj/x86_64-unknown-linux-gnu/libstdc++-v3/src/.libs > -L/usr/local/Gruppi/Marcuzzi/src/Build/gcc-4.1.2-obj/./gcc > -L/usr/local/Gruppi/Marcuzzi/lib > /home/bettella/trilfem/openmpi/lib/libmpi.so > /home/bettella/trilfem/openmpi/lib/libopen-rte.so > /home/bettella/trilfem/openmpi/lib/libopen-pal.so > /usr/local/Gruppi/Marcuzzi/lib/../lib64/libstdc++.so -lm -lcmumps -ldmumps > -lsmumps -lzmumps -lpord -lblas -Wl,--rpath > -Wl,/home/bettella/trilfem/getfem/lib -Wl,--rpath > -Wl,/home/bettella/trilfem/openmpi/lib -Wl,--rpath > -Wl,/usr/local/Gruppi/Marcuzzi/lib/../lib64 > /home/bettella/trilfem/mumps/lib/libdmumps.a(dmumps_part3.o)(.text+0xbd54): > In function `dmumps_270_': > : undefined reference to `numroc_' > > > a list of undefined references from both scalapack and blacs (gridinfo etc) > foolow; the relevant linked libraries exist and have the functions defined > (checked with nm). > Any help would be appreciated. > > Daniele > > > > On Wed, Jun 18, 2008 at 6:52 PM, Daniele Bettella <[EMAIL PROTECTED]> > wrote: > >> I'm linking with gcc, changing order won't change the error message... >> >> >> On Wed, Jun 18, 2008 at 5:18 PM, Richard George <[EMAIL PROTECTED]> wrote: >> >>> Hi Daniele >>> >>> I think >>> >>> U means "this library requires ...." >>> >>> and >>> >>> T means "this library provides ...." >>> >>> so looks like linking against /home/bettella/trilfem/blacs/libblacs.a >>> should make it work? >>> >>> Is the linker sensitive to the order that you specify the libraries? >>> some of them only make one pass and they need the libraries specified in >>> the right order. >>> >>> http://www.network-theory.co.uk/docs/gccintro/gccintro_18.html >>> >>> eg. if you put -L${BLACSDIR} -lblacs ... as the first argument rather >>> than the last one in LDFLAGS, does that change the error message / make >>> it work? >>> >>> Yours >>> >>> Richard >>> >>> >>> On Wed, 2008-06-18 at 17:01 +0200, Daniele Bettella wrote: >>> > Hi and thanks again for your help. I'm creating a bash script that >>> > should automatically install getfem, it's dependencies and other >>> > stuff, the directories pointed by those variables are the places where >>> > I previously installed the libraries (and they are all in a directory >>> > tree under /home/bettella/trilfem/). I'm pretty sure all the variables >>> > are correct as I've checked them many times on config logs. >>> > So I've used your script (nice! thanks!) to search for blacs_gridinit >>> > and I get many results, the following are the most interesting: >>> > >>> > blacs_gridinit_ in blacs_gridinit_.o >>> > Cblacs_gridinit in Cblacs_gridinit_.oo >>> > blacs_gridinit_.o: >>> > 0000000000000000 T blacs_gridinit_ >>> > Cblacs_gridinit_.oo: >>> > 0000000000000000 T Cblacs_gridinit >>> > symbol exists in library /home/bettella/trilfem/blacs/libblacs.a >>> > >>> > U blacs_gridinit_ >>> > symbol exists in library /home/bettella/trilfem/mumps/lib/libdmumps.a >>> > U blacs_gridinit_ >>> > symbol exists in library /home/bettella/trilfem/mumps/lib/libsmumps.a >>> > U blacs_gridinit_ >>> > symbol exists in library /home/bettella/trilfem/mumps/lib/libcmumps.a >>> > U blacs_gridinit_ >>> > symbol exists in library /home/bettella/trilfem/mumps/lib/libzmumps.a >>> > U blacs_gridinit_ >>> > U Cblacs_gridinit >>> > U Cblacs_gridinit >>> > U Cblacs_gridinit >>> > U Cblacs_gridinit >>> > U Cblacs_gridinit >>> > U Cblacs_gridinit >>> > U Cblacs_gridinit >>> > U Cblacs_gridinit >>> > U Cblacs_gridinit >>> > U Cblacs_gridinit >>> > U blacs_gridinit_ >>> > U blacs_gridinit_ >>> > U blacs_gridinit_ >>> > U blacs_gridinit_ >>> > U blacs_gridinit_ >>> > U blacs_gridinit_ >>> > U blacs_gridinit_ >>> > U blacs_gridinit_ >>> > symbol exists in >>> > library /home/bettella/trilfem/scalapack/libscalapack.a >>> > >>> > >>> > everything else is basically copies of these in other places (which >>> > I'm aware of) >>> > I think the U means undefined, is this the problem? >>> > >>> > >>> > On Wed, Jun 18, 2008 at 4:33 PM, Richard George <[EMAIL PROTECTED]> >>> > wrote: >>> > Hi Daniele, >>> > >>> > here's a few things you could try? >>> > >>> > >>> > >>> > 1. where is the file libblacs.a on your machine? >>> > >>> > 2. when you type ./configure .......... >>> > >>> > do you know that each ${VARIABLE} is set correctly? >>> > eg. does ./configure know which directories you mean by >>> > >>> > ${GETFEMDIR} ${TRILINOSDIR} ${BLACSDIR} ${MUMPSDIR} >>> > >>> > does >>> > >>> > echo ${GETFEMDIR} >>> > echo ${TRILINOSDIR} >>> > echo ${BLACSDIR} >>> > echo ${MUMPSDIR} >>> > >>> > produce the expected results? >>> > >>> > if not, perhaps you need to type >>> > >>> > export GETFEMDIR="/...your path to getfem" >>> > export BLACSDIR="/....your path to blacs" >>> > .... >>> > >>> > or manually replace the ${BLACSDIR} with the correct path in >>> > the >>> > configure command arguments before running ./configure? >>> > >>> > 3. It sounds like the linker is not finding the routine >>> > 'blacs_gridinit_' >>> > >>> > you can use the command >>> > >>> > nm -s libname.a >>> > >>> > to list the symbols in the library "libname.a" >>> > >>> > and grep to filter the output for the specific one you want, >>> > eg. >>> > copy and paste this into a bash shell, to search your home >>> > directory for >>> > any library .a file containing the routine blacs_gridinit >>> > ---- >>> > >>> > SEARCH_PATH=/home/bettella >>> > SYMBOL_NAME=blacs_gridinit >>> > >>> > IFS=$'\n' >>> > >>> > for f in $(find $SEARCH_PATH -type f | grep \\.a$); \ >>> > do nm -s $f 2>&1 | grep -i $SYMBOL_NAME; \ >>> > if [ "$?" -eq "0" ]; \ >>> > then echo symbol exists in library $f; \ >>> > fi; done >>> > >>> > >>> > ----- >>> > or, to search installed libraries on the system, >>> > ----- >>> > >>> > SEARCH_PATH=/usr/lib >>> > SYMBOL_NAME=blacs_gridinit >>> > >>> > IFS=$'\n' >>> > >>> > for f in $(find $SEARCH_PATH -type f | grep \\.a$); \ >>> > do nm -s $f 2>&1 | grep -i $SYMBOL_NAME; \ >>> > if [ "$?" -eq "0" ]; \ >>> > then echo symbol exists in library $f; \ >>> > fi; done >>> > >>> > >>> > >>> > >>> > >>> > >>> > >>> > >>> > >>> > >>> > >>> > >>> > On Wed, 2008-06-18 at 12:55 +0200, Daniele Bettella wrote: >>> > > I'm trying to understand how things work... >>> > > it would look as if mumps was built without linking to >>> > scalapack and >>> > > blacs, am I wrong? >>> > > the proper libraries were included in mumps makefile (and >>> > mumps tests >>> > > work properly), but in the building process of libdmumps.a I >>> > can't see >>> > > them used anywhere, although it surely uses them when >>> > building the >>> > > tests (and that's why they work); so going back to getfem I >>> > should be >>> > > able to make check flawlessly by linking the same libraries >>> > as those >>> > > used for mumps tests (plus those needed by getfem itself)... >>> > so why >>> > > isn't it working? >>> > > >>> > > On Tue, Jun 17, 2008 at 10:33 AM, Daniele Bettella >>> > <[EMAIL PROTECTED]> >>> > > wrote: >>> > > Hello and thanks for your answers, I added scalapack >>> > to the >>> > > list of linked libs on getfem, but it solves >>> > nothing; >>> > > regarding pblas I can't seem to find it, it should >>> > be part of >>> > > scalapack or something like that, but a libpblas >>> > wasn't >>> > > created. (btw, I'm compiling everything from >>> > source). >>> > > I should add the among the undef reference there's >>> > something >>> > > specifically about blacs (which is already linked in >>> > getfem >>> > > configure): >>> > > >>> > >>> /home/bettella/trilfem/mumps/lib/libdmumps.a(dmumps_part6.o)(.text+0x158fe): >>> In function `dmumps_164_': >>> > > : undefined reference to `blacs_gridexit_' >>> > > >>> > >>> /home/bettella/trilfem/mumps/lib/libdmumps.a(dmumps_part6.o)(.text+0x15941): >>> In function `dmumps_164_': >>> > > : undefined reference to `blacs_gridinit_' >>> > > >>> > >>> /home/bettella/trilfem/mumps/lib/libdmumps.a(dmumps_part6.o)(.text+0x15977): >>> In function `dmumps_164_': >>> > > : undefined reference to `blacs_gridinfo_' >>> > > >>> > > >>> > > >>> > > >>> > > On Mon, Jun 16, 2008 at 7:51 PM, Richard George >>> > > <[EMAIL PROTECTED]> wrote: >>> > > Hi there, >>> > > >>> > > possibly you need to link against pblas >>> > instead of >>> > > blas, eg. >>> > > >>> > > BLAS_LIBS=-lpblas >>> > > >>> > > + did you compile everything locally, or did >>> > you >>> > > install some binary >>> > > packages? >>> > > >>> > > I ask because the make file tests how the >>> > fortran >>> > > compiler mangles the >>> > > names of the routines it generates, eg, the >>> > routine >>> > > "numroc" in the >>> > > source appears as a function "numroc_" in >>> > the object >>> > > code, >>> > > >>> > > but it might have been called "_numroc" or >>> > > "__numroc" (etc) depending on >>> > > which brand of fortran compiler you are >>> > using. The >>> > > makefile compiles a >>> > > short fortran routine and inspects how the >>> > output is >>> > > named, assuming the >>> > > make file is calling the same brand of >>> > fortran >>> > > compiler as was used to >>> > > compile the libraries. >>> > > >>> > > If it's all compiled locally that's unlikely >>> > to be an >>> > > issue. >>> > > >>> > > best of luck >>> > > >>> > > Richard >>> > > >>> > > >>> > > >>> > > >>> > > >>> > > >>> > > On Sun, 2008-06-15 at 23:07 +0200, Daniele >>> > Bettella >>> > > wrote: >>> > > > No one? >>> > > > >>> > > > On Wed, Jun 11, 2008 at 11:53 AM, Daniele >>> > Bettella >>> > > <[EMAIL PROTECTED]> >>> > > > wrote: >>> > > > Hi, I'm trying to compile getfem >>> > with >>> > > parallel support, I'm >>> > > > using this configure script >>> > > > >>> > > > ./configure --prefix=${GETFEMDIR} >>> > > --enable-shared >>> > > > --enable-python >>> > --with-pic >>> > > > BLAS_LIBS=-lblas >>> > > > CXXFLAGS="-I >>> > > ${TRILINOSDIR}/include -D >>> > > > GETFEM_PARA_LEVEL=2 -I >>> > ${MUMPSDIR}/include" >>> > > > MUMPS_CFLAGS="-I >>> > > ${MUMPSDIR}/include" >>> > > > MUMPS_LIBS="-L >>> > ${MUMPSDIR}/lib >>> > > -lcmumps -ldmumps >>> > > > -lsmumps -lzmumps -lpord" >>> > > > LDFLAGS="-L >>> > ${TRILINOSDIR}/lib >>> > > -lepetra -ltriutils >>> > > > -laztecoo -lteuchos >>> > > > -L >>> > ${METISDIR} >>> > > -lmetis -lparmetis >>> > > > -L${MUMPSDIR}/lib -ldmumps >>> > > > >>> > -lcmumps >>> > > -ldmumps -lsmumps >>> > > > -lzmumps -lpord -llapack >>> > > > -L >>> > ${BLACSDIR} >>> > > -lblacsF77 -lblacs >>> > > > -lblacsC" >>> > > > >>> > CC=mpicc >>> > > CXX=mpicxx F77=mpif77 >>> > > > >>> > > > >>> > > > Getfem compilation works fine, but >>> > on make >>> > > check I have the >>> > > > following error message when >>> > compiling >>> > > elastostatic: >>> > > > >>> > > >>> > >>> /home/bettella/trilfem/mumps/lib/libdmumps.a(dmumps_part3.o)(.text+0xbd54): >>> In function `dmumps_270_': >>> > > > : undefined reference to `numroc_' >>> > > > >>> > > > >>> > > > many other undef reference follow, >>> > they all >>> > > seem to be >>> > > > reffered to blacs routines, mumps >>> > was >>> > > installed with the >>> > > > following makefile.inc (for what >>> > regards >>> > > blacs) >>> > > > BLACSFINIT >>> > > = /home/bettella/trilfem/blacs/blacsF77.a >>> > > > BLACSCINIT >>> > > = /home/bettella/trilfem/blacs/blacsC.a >>> > > > BLACSLIB >>> > > = /home/bettella/trilfem/blacs/blacs.a >>> > > > SCALAP = -lscalapack $(BLACSLIB) >>> > > $(BLACSCINIT) $(BLACSFINIT) >>> > > > $(BLACSLIB) >>> > > > >>> > > > mumps compiles fine and the tests >>> > run ok >>> > > > >>> > > > I know my configure script for >>> > getfem is a >>> > > little messy, but >>> > > > I'm struggling to find a solution >>> > fort this >>> > > problem... >>> > > > any help would be very >>> > appreciated. >>> > > > >>> > > > Daniele >>> > > > >>> > > > >>> > > >>> > > > >>> > _______________________________________________ >>> > > > Getfem-users mailing list >>> > > > [email protected] >>> > > > https://mail.gna.org/listinfo/getfem-users >>> > > >>> > > >>> > > >>> > > >>> > >>> > >>> > >>> >>> >> >
_______________________________________________ Getfem-users mailing list [email protected] https://mail.gna.org/listinfo/getfem-users
