I have one!  David, Derek and I have all been working to get libMesh working 
with the Apple supplied GCC compilers.  Apple has forked GCC and is forging 
ahead full steam and will probably continue to diverge from the normal GCC 
tree.  Derek discovered that the R project is maintaining GFORTRAN in lockstep 
with XCode on the Mac and it is possible to install that package and then build 
the full stack underneath libMesh (MPICH2, HYPRE, and PETSC) with a few 
modifications.  We haven't succeeded with this task since Snow Leopard was 
introduced so this is really good news.  There are a few additional fixes and 
hacks (yes both) that need to be added and tested in the m4 scripts.  

First we found that some of the flags in the "gcc debug" sections do not work 
with the Apple compilers.  Specifically -D_GLIBCXX_DEBUG and 
-D_GLIBCXX_DEBUG_PEDANTIC.  These flags cause memory corruption/seg fault 
issues in _some_ of the libMesh examples when running the debug version of the 
code.   Hum - I think we saw something like this on the mailing list last week. 
 What's interesting is that that user was using the HPC compilers which I 
haven't seen affected by this issue.  I'm curious, why are these flags 
specifically added here?  Are the regular debug flags not enough or do we 
really need these more esoteric flags?  

The second issue has already been discussed on the mailing list: 
http://www.mail-archive.com/[email protected]/msg02436.html
These flags are still necessary to successfully run libMesh examples that use 
RTTI (example 13).  This does appear to be a bug in Apple's linker so perhaps 
we need those extra cases in the configure scripts anyway, since Apple will 
most likely eventually fix that bug.  As it stands now, libMesh HEAD does not 
run on Mac OS 10.6 without third party compilers or hackery in the Make files 
so this should be solidified before the next point release.

I'm more than happy to commit changes to the m4 scripts, I just want to 
understand the debug compiler flags being used and why they are there.

Thanks,
Cody

On Sep 28, 2010, at 2:35 PM, Roy Stogner wrote:

> 
> On Tue, 28 Sep 2010, Derek Gaston wrote:
> 
>> We're working on a small patch to System::add_vector() to allow adding
>> ghosted vectors.  It might be nice if that made it in the release but
>> it isn't critical.  I'll check and see if we have other outstanding
>> libmesh patches lying around and try to get them shape and committed.
> 
> Thanks!
> 
> No rush; we're not on a deadline.  If we're ready to release by next
> week it would be nice, but if it takes longer we can always branch the
> tree; let people get back to new work on the trunk while the branch
> gets cleaned up for release.
> ---
> Roy
> 
> ------------------------------------------------------------------------------
> Start uncovering the many advantages of virtual appliances
> and start using them to simplify application deployment and
> accelerate your shift to cloud computing.
> http://p.sf.net/sfu/novell-sfdev2dev
> _______________________________________________
> Libmesh-devel mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/libmesh-devel


------------------------------------------------------------------------------
Start uncovering the many advantages of virtual appliances
and start using them to simplify application deployment and
accelerate your shift to cloud computing.
http://p.sf.net/sfu/novell-sfdev2dev
_______________________________________________
Libmesh-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/libmesh-devel

Reply via email to