Corrado, it seems to me that fenics-install.sh is not appropriate for what you want to do. Its goal (and hashdist's generally) is to install FEniCS stack as a single, embedded, well-defined stack, independently of the machine used.
If you want to customize the dependencies used and take care of them by yourself then fenics-install-component.sh or modified version of fenics-install-all.sh (you just get rid of invocation of fenics-install.sh there and substitute you own method there; Dorsal works here as well but nobody maintains it so it requires some monkey-patching.) Besides this, slepc4py should be added to fenics-install.sh but I think that there are some troubles here and Johannes is watching it. Jan On Fri, 30 Jan 2015 17:15:54 +0100 Corrado Maurini <[email protected]> wrote: > I was the one helping Claire, so I try give you some more details and > I take the opportunity to give some feedback on hashdist install > after spending almost two days compiling: > > General remarks: > > 1 - hashdist is nice, but I was not able to install with slepc4py > only using hashdist. > > 2 - I found http://fenicsproject.org/fenics-install.sh > <http://fenicsproject.org/fenics-install.sh> interesting as an > example for personalise script, but I do not like the “one-click” > install philosophy and I would not recommend it to newcomers, > because: (i) if you have any problem during the installation you have > no idea bout how to solve (and it is very likely you have a problem, > if you do not have a completely clean os) (ii) if you want to change > the settings (e.g. add slepc4py) you have no idea about what to do. > (iii) you completely loose the control about what it is happening and > your system, and it is not evident at all to track what the script is > doing. > > 3 - I think that hashdist should be used by adopting/modifying the > profile fenics.Darwin.yaml provided in the examples in hashdist (and > eventually tuning its setting for your system) and using hashdist > with “hit build” being aware of what you are doing. In my opinion > this method should be documented on the fenics website. > > 4 - It is not evident to select the best practice to let hashdist > interact with your generic package manager (homebrew/macport). In my > understanding hashdist is not designed to be a replacement of a > generic package manager, but to work on top of it. > > My current solution is a mix, maybe not optimal, and not yet > definitive: > > - As a general practice I try to stick to system compilers (clang) > and system python (2.7). A big issue is that very often you do not > understand which one of the many python installed in your system you > are using. > - I use homebrew as generic package manager. I use it to install > generic dependencies as cmake, boost, vtk, eigen, openmpi, libxml … I > also install gcc with homebrew to have a fortran compiler, but then I > use clang to compile c, c++ > - I install petsc/slepc/petsc4py/slepc4py manually with my own > PETSC_DIR and PETSC_ARCH, letting petsc install all the dependencies > like parmetis, metis, super_dist, ml, ... > - I use hashdist to install only ffc/ufl/instant/…/dolfin stack, > eventually with different profiles (e.g., 1.5, development, > yournewbranch). To do this you have to modify the fenics.Darwin.yaml > profile to use host packages for whatever it is already installed > (boost, vtk, petsc, slepc, slepc4py, hd5) > > I hope it may give an idea … but it is not "one-click" if you want to > have control on your system … > > Otherwise I think the only “easy” solution is to use binary (and I > think that it is important that are provided with all possible > dependencies) or a virtual machine with fenics-virtual. > > In particular, I teach a master class using fenics, and I do not even > talk about compiling for source to students. I suggest two options: > binaries (if they works) or virtual-fenics. And this year 38 > students, not proficient with programming and os-menagement, were > able to use it without my help from macsox/linux/windows … The case > of Claire is different, because she need special feature, namely > petsc4py (and she is not a master student!). Corrado > > Corrado Maurini > [email protected] > > > > > On 30 Jan 2015, at 15:45, Claire Lestringant > > <[email protected]> wrote: > > > > I used the command line on FEniCS website : > > curl -s http://fenicsproject.org/fenics-install.sh > > <http://fenicsproject.org/fenics-install.sh> | bash > > > > > >> Le 30 janv. 2015 à 15:43, Miroslav Kuchta <[email protected] > >> <mailto:[email protected]>> a écrit : > >> > >> Hi, > >> > >> could you please share how you installed FEniCS on Mac? Did you > >> use dorsal, hashdist, …? Thanks. > >> > >> Miro > >>> On 29 Jan 2015, at 17:59, Claire Lestringant > >>> <[email protected] > >>> <mailto:[email protected]>> wrote: > >>> > >>> Hello, > >>> > >>> I installed FEniCS from source on my computer (mac OS Yosemite), > >>> and I wish to work with slepc4py. What is the best way to install > >>> it ? > >>> > >>> Thanks in advance, > >>> > >>> C. Lestringant > >>> _______________________________________________ > >>> fenics-support mailing list > >>> [email protected] > >>> <mailto:[email protected]> > >>> http://fenicsproject.org/mailman/listinfo/fenics-support > >> > > > > _______________________________________________ > > 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
