Subject: [FEniCS-dev] FEniCS package

From: Anders Logg <[email-masked]>
Date: Thu, 7 Sep 2006 21:47:52 +0200

It has become obvious that the installation of various FEniCS packages
(most notably DOLFIN and dependencies) is an obstacle for many users.

Maybe it's time we provide a binary (+headers) distribution of the
collection of FEniCS packages that is *very* simple to set up?

This would include all the FEniCS packages (DOLFIN, FErari, FFC, FIAT,
Ko, Puffin) and any non-standard dependencies (PETSc, uBLAS, libxml2,
MPI, UMFPACK, SLEPc etc).

The process of building the package could be semi-automated and the
package would be named FEniCS (fenics) with a version number of its
own.

Any thoughts?

Anyone wants to help building the package?

/Anders

---

From: Anders Logg <[email-masked]>
Date: Fri, 8 Sep 2006 08:00:15 +0200

On Thu, Sep 07, 2006 at 07:15:13PM -0500, Ridgway Scott wrote:
> >Any thoughts?
> 
> I think this is a good idea, but it may be a bit complicated to
> get right for a wide range of machines. 
> 
> 				Ridg

Yes, but we could start with the simplest. In addition, we can provide
a build script that lets trusted users on different machines
contribute builds for those machines.

/Anders

---

From: Anders Logg <[email-masked]>
Date: Fri, 8 Sep 2006 08:20:13 +0200

On Fri, Sep 08, 2006 at 08:15:49AM +0200, Dag Lindbo wrote:
> On Thu, 2006-09-07 at 21:47, Anders Logg wrote:
> I think it would make sense to provide binaries for a non-MPI/PETSc
> installation. A fair guess is that someone would like to start using the
> libs and get comfy, before going MPI.
> 
> By the way, uBLAS/UMFPACK rally speed things up! A wonderful improvement
> over 0.6.1.

Yes, most likely, the default distribution will be without any special
configuration options (which would mean no --enable-petsc) so we would
distribute the simple uBLAS non-PETSc version.

/Anders

---

From: "Garth N. Wells" <[email-masked]>
Date: Fri, 08 Sep 2006 08:47:59 +0200

I'm not very enthusiastic about this because I'm also concerned that it
is too complicated for a wide range of machines and wouldn't solve the
problem at hand.

Testing on a larger number of different systems would address part of
the current issue. At least for DOLFIN, almost all developers as far as
I know are running Debian-based systems which is leading to some build
difficulties for users running others systems, primarily due to
different complier and library versions.

Garth

Anders Logg wrote:
> _______________________________________________
> FEniCS-dev mailing list
> [email-masked]
> http://www.fenics.org/mailman/listinfo/fenics-dev
>

---

From: "Johan Hoffman" <[email-masked]>
Date: Fri, 8 Sep 2006 11:21:44 +0200 (MEST)

> package would be named FEniCS (fenics) with a version number of its

Of course it would be great to be able to offer this. And possibly (at
least some of) the projects are stable enough to motivate it.

> Anyone wants to help building the package?

I have no experience in building binaries, and I do not have the
opportunity to set aside time to learn at this point. The time I plan to
invest in FEniCS this coming period will be focused on the mesh (moving,
smoothing, refining,...), b.c. (including geometry: normals etc.), and
solvers (FSI, free surface, compressible flow,...).

/Johan

> DOLFIN-dev mailing list
> [email-masked]
> http://www.fenics.org/mailman/listinfo/dolfin-dev
>

---

From: Anders Logg <[email-masked]>
Date: Fri, 8 Sep 2006 13:24:42 +0200

> is too complicated for a wide range of machines and wouldn't solve the

I won't push this if there is limited interest.

> different complier and library versions.

Yes, having an active developer working on a non-Debian system would
be a great benefit.

/Anders

---

From: Anders Logg <[email-masked]>
Date: Sat, 9 Sep 2006 00:13:43 +0200

On Fri, Sep 08, 2006 at 03:16:58PM -0500, Ridgway Scott wrote:
> This is a great idea. Sort of a "wiki" approach?
> 
> 			Ridg

That's one option, but I was thinking more along the lines of only
letting a few users contribute builds, not letting anyone update the
builds all the time, which could be dangerous... :-)

Let's see how this goes. So far the interest seems to be limited.

/Anders

---

From: "Saeed Kamal" <[email-masked]>
Date: Sat, 9 Sep 2006 00:43:43 +0200 (CEST)

Hi,

I am not one of the developers, but I find this very interesting. I have
experienced installing DOLFIN before, and -I think- it is even more
complicated now.

An easy to setup software means that more users will try it. If popularity
is an interest, beside others, this will be a step in the right way.

Best Regards,
Saeed Kamal

---

From: [email-masked]
Date: Sat, 9 Sep 2006 18:34:58 +0200 (CEST)

Very good! I started to look at putting together a script that
automatically downloads
all FEniCS packages and builds a simple binary distribution. This could be
something to start with. But feel free to find another solution.

/Anders

> I have a RedHat Fedora core cluster, several Fedora core workstations,
> 64-bit SuSE, and Windows. They all have different compilers and
> environments
> so I always have something that I need to tweak. I could give it a whirl
> to
> see what is involved.
>
> Theo
>
> -----Original Message-----
> From: [email-masked] [mailto:[email-masked]]
> On Behalf Of Anders Logg
> Sent: Friday, September 08, 2006 7:25 AM
> To: [email-masked]; [email-masked]
> Subject: Re: [FEniCS-dev] FEniCS package
>

---

From: [email-masked] (Ridgway Scott)
Date: Fri, 8 Sep 2006 15:16:58 -0500 (CDT)

Ridg

---

From: "Theodore Omtzigt" <[email-masked]>
Date: Sat, 9 Sep 2006 09:59:21 -0400

I have a RedHat Fedora core cluster, several Fedora core workstations,
64-bit SuSE, and Windows. They all have different compilers and environments
so I always have something that I need to tweak. I could give it a whirl to
see what is involved.

Theo

-----Original Message-----

/Anders

---

From: "tomtzigt" <[email-masked]>
Date: Sun, 10 Sep 2006 12:45:01 -0400

Another element that is needed if we are going to binary releases is some
reasonable regression test suite. In particular, I have found many issues
when trying to port 32bit code to 64bit platforms that only pop out if you
run tests. For numerical software such test suites tend to be a bit
involved. Maybe the PETSc folks have some insight in this? Do we have any
ATLAS, uBLAS, or FLAME folks on this list? 

Theo

-----Original Message-----
From: [email-masked] [mailto:[email-masked]]
On Behalf Of [email-masked]
Sent: Saturday, September 09, 2006 12:35 PM
To: Theodore Omtzigt
Cc: [email-masked]; [email-masked]
Subject: Re: [FEniCS-dev] FEniCS package

/Anders

---

From: "Theodore Omtzigt" <[email-masked]>
Date: Sun, 10 Sep 2006 12:30:11 -0400

Sure, let's start from there. I have had many a problem with 64bit linux, so
let's see how well that ports. So far I have always used a tar drop, but I
presume that sits in the subversion repository? If you can give me a pointer
I can give your script a shot.

Personally, I like a distinct separation between downloads and installs.
When you are on the road, connectivity is not always available and that way
you can download just before you board the plane and then build, or try to
build, during the flight.

Secondly, I have been working on a windows build script for DevStudio, but
the FEniCS code organization is not conducive for windows. I will continue
to try to make it work so that once I do have it I can compare it to
alternatives.

Theo

-----Original Message-----
From: [email-masked] [mailto:[email-masked]] 
Sent: Saturday, September 09, 2006 12:35 PM
To: Theodore Omtzigt
Cc: 'Anders Logg'; [email-masked]; [email-masked]
Subject: RE: [FEniCS-dev] FEniCS package

/Anders

---

From: Anders Logg <[email-masked]>
Date: Sun, 10 Sep 2006 21:24:54 +0200

> I can give your script a shot.

It's very fresh. I got something very basic working quickly, but I
need to test it more. I'll publish it when it's in working condition.

> build, during the flight.

The script is setup so it downloads and builds everything necessary,
but this is not intended for end-users, but rather for someone who
wants to contribute a build. A user would download the build
containing everything and just unpack it.

> to try to make it work so that once I do have it I can compare it to

I have absolutely no idea how (or why) Windows works so any input in
that direction is welcome.

/Anders

---

From: Anders Logg <[email-masked]>
Date: Sun, 10 Sep 2006 21:27:01 +0200

On Sun, Sep 10, 2006 at 12:45:01PM -0400, tomtzigt wrote:
> involved. Maybe the PETSc folks have some insight in this?

> Do we have any ATLAS, uBLAS, or FLAME folks on this list? 

I would guess not so many.

We have started to put some more effort into unit testing on the
DOLFIN side. It's something used extensively at Simula (for PyCC).

/Anders

---

From: Anders Logg <[email-masked]>
Date: Tue, 12 Sep 2006 09:18:38 +0200

On Mon, Sep 11, 2006 at 03:38:43PM -0400, Harish Narayanan wrote:
> I've read this entire thread over the past few days and I am going to 
> attempt a solution based on the GAR ports system[1]. It will not be 
> distributed as a binary, but a rule-set to download sources and compile 
> them for different architectures. I have been curious to try it, and 
> this seems to be as good an opportunity as any other.
> 
> This is similar to the scripts you mention later on in the thread, 
> except based on an existing framework. If not anything, though I don't 
> have access to Windows to try them out, I can help out by putting your 
> scripts through (the peculiar) Mac OS X and submitting diffs.
> 
> Harish

Sounds great.

We will need both: a binary package that is very very simple to
install and a tool that automatically downloads and builds the binary
packackage (possibly based on GAR).

/Anders