I finally polished the recipes, adding test running and checksums for both 1.4.0 and 1.5.0. I also uploaded compiled versions of FEniCS to Binstar.

Here is the source of the recipes (check the maint-1.4.0 branch too) with non-very-rigorous instructions on installing and building:

https://github.com/juanlu001/fenics-recipes

To install FEniCS in CentOS 6 these commands should work:

$ bash
$ conda create -n fenics27 python=2.7
$ source activate fenics27
(fenics27) $ conda install "fenics=1.4.0" mkl --channel https://conda.binstar.org/juanlu001/channel/fenics:1.4.0:centos

I still find that installing the packages in a different distribution that the one used for building them has its problems (e.g. some hardcoded paths in instant and ffc, at least in 1.4.0, that require manual fixing) but still these recipes work wonderfully as a build system. I have compiled all the libraries like thirty times in the past two weeks but in the end I reached my goal, which was using FEniCS in my native system. Hope they are useful :)

Best regards,

Juan Luis

On 2015-01-11 21:38, Juan Luis Cano wrote:
Hello all,

I just wanted to say that I finally got VTK plotting to work. Fortunately there was a VTK conda package, so I switched my build system to a Linux Mint with a proper graphical server and it worked. I tested the package both in Mint and Arch Linux and I can claim success :)

Let me repeat the commands:

$ conda create --name py27 python=2.7
$ source activate py27
(py27)$ conda install fenics --channel juanlu001


I will repeat the process with the first 1.5 release with updated requirements, and by then I will probably put all the conda recipes in an independent Bitbucket repo. Again, any feedback is welcome.

Best regards,

Juan Luis

On 2015-01-05 22:32, Garth N. Wells wrote:
I think is is great.

I haven’t tested yet, but a suggestion to make the process simpler is to let PETSc build suitesparse, etc. PETSc is a C library but can be installed with pip (it has a Python-based build system). It can take care of a number of dependencies (solvers, graph partitioners, etc).

I’ve copied Andy Terrel at Conitnuum Analytics who might have something to chip in with.

Garth


On 5 Jan 2015, at 13:07, Juan Luis Cano <[email protected]> wrote:

Hello all,

My name is Juan Luis Cano, I'm studying a MSc in Aerospace Engineering in Madrid and I started recently to play with FEniCS for my final degree project. For my day to day work I am using a virtualized Linux Mint and everything works like a charm thanks to the Ubuntu PPA, but as it is not the distribution which I normally use I tried to build a conda package these holidays.

I noticed there are a couple of build systems out there (dorsal, hashdist) but, as the Anaconda distribution[1] is getting popular in the scientific Python world these days, I really wanted to try to provide FEniCS packages for it (at least in Linux). For those who don't know it, Anaconda's package manager, conda, is open source[2] and provides a nice build system[3].

You can try out my progress so far with a Linux 64 bit box and a Python 2.7 environment:

$ conda create --name py27 python=2.7
$ source activate py27
(py27)$ conda install fenics --channel juanlu001

The build process itself was painful because I knew very little about FEniCS dependencies a week ago but right now I managed to run the `demo_poisson.py` (_without_ plotting, see below). The results seem OK from Paraview.

The good thing is that I made the builds in an Ubuntu Server box but it works the same in an Arch Linux machine too. I didn't try to compile it against PETSc, Trilinos and such yet because I wanted some feedback from the community first, and know if this is something useful for anybody!

The trick here was avoiding the Ubuntu packages (via apt-get) and compile the dependencies in the form of conda packages themselves. I did such with boost and suitesparse, for instance[4]. This way there are no linking problems across different Linux distros. I am stuck with VTK though because it seems to look for libGL.so, which in turn pulls from X11... and everythings gets messy very quickly[5].

So if I can get some feedback about how does this work in others' computers, if this is any useful and which packages should I try to build next that would be great. Anybody can reproduce the build process using my conda-recipes fork.

Kind regards and happy new year!

Juan Luis

[1] https://store.continuum.io/cshop/anaconda
[2] https://github.com/conda/
[3] http://conda.pydata.org/docs/build.html
[4] https://binstar.org/juanlu001/
[5] https://github.com/Juanlu001/conda-recipes/commit/a18cedc56e330ba09961b8ddaeb86f580e22f3cc
_______________________________________________
fenics-support mailing list
[email protected]
http://fenicsproject.org/mailman/listinfo/fenics-support


_______________________________________________
fenics-support mailing list
[email protected]
http://fenicsproject.org/mailman/listinfo/fenics-support

Reply via email to