← Back to team overview

fenics team mailing list archive

Re: MSVC version of FEniCS

 

Could you give any specifics? Which packages have you tried to
compile? Maybe some of the problems you have spotted are not
Unix-specific, only non-standard, and then it would be good to know so
we could fix.

/Anders


On Sat, Dec 10, 2005 at 08:21:54PM -0500, tomtzigt wrote:

> Actually, the more pressing desire is to run with the MS compilers and IDE.
> I have MinGW and FEniCS compiles with it, although I haven't tried to
> compile PETSc with it to complete the FEniCS stack, but I am sure I can make
> that work.
> 
> What I'll do is try is isolate the problem headers in a clean way, that is,
> move some of the sys headers that Windows doesn't share, into a single
> include file that accumulates the compiler and platform testing logic. This
> doesn't mess up the code with ifdefs all over the place and is a central
> place where any portability issues can be addressed. The only disadvantage
> is that this header can become a small compilation time drain on the overall
> build since it wouldn't be the leanest meanest header you could create. Not
> a big problem for MS environment with precompiled headers, but typically
> less attractive for gcc that doesn't have precompiled headers; it all
> depends on how pervasive the OS specific features are that are included and
> of what I see that is small. When that portability layer becomes larger the
> right way to deal with it is to compile it into its own library and
> associated abstractions.
> 
> Theo
> 
> -----Original Message-----
> From: Anders Logg [mailto:logg@xxxxxxxxx] 
> Sent: Friday, December 09, 2005 11:27 PM
> To: tomtzigt; Discussion of FEniCS development
> Subject: Re: [fenics-dev] MSVC version of FEniCS
> 
> On Fri, Dec 09, 2005 at 08:54:43PM -0500, tomtzigt wrote:
> >    Guys:
> > 
> > 
> > 
> >     I decided to see if I can transmogrify FEniCS into something that
> MSDev
> >    .NET understands. I am successfully building many of the kernel
> projects
> >    but in getting this to work I see a handful of Unixisms that will never
> >    port to Windows natively.
> 
> Anything specific you think of?
> 
> If for some reason you insist on running on Windows, I suggest using
> Cygwin which at least gives you a Unix-like environment.
> 
> > The typical way to deal with this is to have
> >    some standard
> > 
> > 
> > 
> >    #ifdef LINUX_GNU
> > 
> >    #include <woopdido>
> > 
> >    #elsif WINDOWS
> > 
> >    #include <woopdida>
> > 
> >    #endif
> > 
> > 
> > 
> >    constructs in the headers which I can hack into the code in a fine way
> and
> >    a not so fine way. So I am trying to gauge if native windowness using
> the
> >    MS compilers is desired by many or just me.
> 
> It's nothing I desire, but I'm not opposed to it. It could bring some
> advantages, such as forcing us to follow standards which will also benefit
> other platforms.
> 
> >    If it is the latter then I
> >    won't try to solve this problem neatly. If the larger community is
> >    interested, I can solve it nicely.
> > 
> > 
> > 
> >    Opinions?
> > 
> > 
> > 
> >    Theo
> 
> Any suggestions are welcome. I have never built anything on Windows
> (except under Cygwin) so the whole Windows platform is a mystery to
> me.
> 
> /Anders
> 
> 
> 
> 

-- 
Anders Logg
Research Assistant Professor
Toyota Technological Institute at Chicago
http://www.tti-c.org/logg/



References