← Back to team overview

dolfin team mailing list archive

Re: Snow Leopard status

 

On Tue, Aug 24, 2010 at 12:55:27PM +0100, Garth N. Wells wrote:
>
>
> On 24/08/10 12:54, Anders Logg wrote:
> > Johannes Ring skrev 2010-08-24 13.51:
> >> On Tue, Aug 24, 2010 at 1:38 PM, Anders Logg<logg@xxxxxxxxx>  wrote:
> >>> Johannes Ring skrev 2010-08-24 13.33:
> >>>>
> >>>> On Tue, Aug 24, 2010 at 1:27 PM, Anders Logg<logg@xxxxxxxxx>    wrote:
> >>>>>
> >>>>> Johannes Ring skrev 2010-08-24 11.02:
> >>>>>>
> >>>>>> On Tue, Aug 24, 2010 at 9:32 AM, Anders Logg<logg@xxxxxxxxx>
> >>>>>> wrote:
> >>>>>>>
> >>>>>>> On Tue, Aug 24, 2010 at 09:24:51AM +0200, Johannes Ring wrote:
> >>>>>>>>
> >>>>>>>> On Tue, Aug 24, 2010 at 9:06 AM, Anders
> >>>>>>>> Logg<logg@xxxxxxxxx>      wrote:
> >>>>>>>>>
> >>>>>>>>> On Tue, Aug 24, 2010 at 08:56:10AM +0200, Johannes Ring wrote:
> >>>>>>>>>>
> >>>>>>>>>> On Tue, Aug 24, 2010 at 1:40 AM, Harish Narayanan
> >>>>>>>>>> <harish.mlists@xxxxxxxxx>      wrote:
> >>>>>>>>>>>
> >>>>>>>>>>> On 8/24/10 4:14 AM, Anders Logg wrote:
> >>>>>>>>>>>>
> >>>>>>>>>>>> All packages except Trilinos work up to the point of linking
> >>>>>>>>>>>> now
> >>>>>>>>>>>> where
> >>>>>>>>>>>> I get errors pointing to undefined symbols: _camd_realloc,
> >>>>>>>>>>>> _ccolamd_l_recommended, etc.
> >>>>>>>>>>>>
> >>>>>>>>>>>> I assume these are in AMD. The AMD libraries are added (in
> >>>>>>>>>>>> FindCHOLMOD) but for some reason libcholmod.a appears after
> >>>>>>>>>>>> libamd.a
> >>>>>>>>>>>> on the link line. I can't figure out where that order comes
> >>>>>>>>>>>> from
> >>>>>>>>>>>> or
> >>>>>>>>>>>> how to change it.
> >>>>>>>>>>>>
> >>>>>>>>>>>> Any ideas?
> >>>>>>>>>>>
> >>>>>>>>>>> Johannes can fix this. We've been through *all* this before.
> >>>>>>>>>>
> >>>>>>>>>> Well, in cholmod.py in simula-scons we had this link line:
> >>>>>>>>>>
> >>>>>>>>>>    -L/some/path -lcholmod -lamd -lcamd -lcolamd -lccolamd
> >>>>>>>>>> -llapack
> >>>>>>>>>> -lblas
> >>>>>>>>>>
> >>>>>>>>>> On darwin we had "-framework vecLib" instead of "-llapack
> >>>>>>>>>> -lblas".
> >>>>>>>>>>
> >>>>>>>>>> If CHOLDMOD was built with METIS (as Dorsal does) we also added
> >>>>>>>>>> "-lmetis".
> >>>>>>>>>
> >>>>>>>>> Can you see if you can get this to work in CMake?
> >>>>>>>>
> >>>>>>>> Yes, I will look at it. I'm building it on Snow Leopard now.
> >>>>>>>>
> >>>>>>>> Johannes
> >>>>>>>
> >>>>>>> Great. Thanks.
> >>>>>>
> >>>>>> I have now tried to add a test program to FindCHOLMOD.cmake that
> >>>>>> should fail if it is not linked correctly. It is not tested on Mac
> >>>>>> yet
> >>>>>> as I have had some problems with MacPorts (I think I'll have to
> >>>>>> reinstall it completely).
> >>>>>>
> >>>>>> Johannes
> >>>>>
> >>>>> The test breaks for me with the following error:
> >>>>>
> >>>>> Run Build Command:/usr/bin/make "cmTryCompileExec/fast"
> >>>>> /usr/bin/make -f CMakeFiles/cmTryCompileExec.dir/build.make
> >>>>> CMakeFiles/cmTryCompileExec.dir/build
> >>>>> /opt/local/bin/cmake -E cmake_progress_report
> >>>>>
> >>>>> /Users/logg/Work/FEniCS/src/dolfin/dorsal_build_dir/CMakeFiles/CMakeTmp/CMakeFiles
> >>>>>
> >>>>> 1
> >>>>> Building CXX object CMakeFiles/cmTryCompileExec.dir/src.cxx.o
> >>>>> /usr/bin/mpic++    -DBOOST_UBLAS_NDEBUG  -DCHOLMOD_TEST_RUNS
> >>>>> -I/opt/local/include/ufsparse   -o
> >>>>> CMakeFiles/cmTryCompileExec.dir/src.cxx.o
> >>>>> -c
> >>>>>
> >>>>> /Users/logg/Work/FEniCS/src/dolfin/dorsal_build_dir/CMakeFiles/CMakeTmp/src.cxx
> >>>>>
> >>>>>
> >>>>> /Users/logg/Work/FEniCS/src/dolfin/dorsal_build_dir/CMakeFiles/CMakeTmp/src.cxx:1:
> >>>>>
> >>>>> error: expected constructor, destructor, or type conversion at end of
> >>>>> input
> >>>>> make[1]: *** [CMakeFiles/cmTryCompileExec.dir/src.cxx.o] Error 1
> >>>>> make: *** [cmTryCompileExec/fast] Error 2
> >>>>
> >>>> I also got that but then it disappeared. I think it was because I
> >>>> cleaned up my build tree. Have you tried that?
> >>>>
> >>>> Johannes
> >>>
> >>> Yes, if by that you mean deleting dorsal_build_dir.
> >>
> >> Yes, that's what I meant. However, that wasn't the reason it suddenly
> >> worked for me. I now see that I get the same error as you unless I'm
> >> adding the flag --debug-trycompile when running cmake. It's kinda
> >> strange that it works with this flag but not without it. I will look
> >> into it.
> >>
> >> Johannes
> >
> > There was some problem related to "" in printf (I think). At least it
> > compiles now but it doesn't build. I've also added BLAS libs which helps
> > some but now we get the following strange link error:
> >
> > /lib/libamd.a /opt/local/lib/libcamd.a /opt/local/lib/libcolamd.a
> > /opt/local/lib/libccolamd.a /usr/lib/libatlas.dylib
> > Undefined symbols:
> >   "_METIS_NodeND", referenced from:
> >       _cholmod_metis in libcholmod.a(cholmod_metis.o)
> >   "_METIS_NodeComputeSeparator", referenced from:
> >       _cholmod_metis_bisector in libcholmod.a(cholmod_metis.o)
> > ld: symbol(s) not found
> >
> > I didn't know METIS was used by CHOLMOD. Is it? Should we add the METIS
> > libs too?
> >
>
> Yes! (I'm trying to beat Harish to the send button ;)).

Great. On the contrary, I would be very happy if someone beat me to
adding the METIS libs. :-)

--
Anders



Follow ups

References