On Wed, 10 Dec 2014 09:57:10 +0000
Anders Logg <[email protected]> wrote:

> This is something I haven't figured out. It would be good to have a
> discussion on this.
> 
> One option might be to just keep all of FEniCS with dependencies in
> HashDist (using the fenics-install.sh script).
> 
> Then for all FEniCS Python components, one sets up a separate
> directory for installation during development, in combination with a
> config file that can be sourced to put that directory first in the
> path.
> 
> For DOLFIN development, one would source the hashdist config and work
> with cmake.local.
> 
> But there are likely better ways to handle this using suitable
> hashdist commands. Even if the install script does not install
> hashdist, I assume it will be a good thing for developers to actually
> install hashdist so that they may talk to hashdist outside of running
> the install script.

So couldn't the script use installed hashdist and hashstack if present
instead of installing fresh clones to /tmp?

Jan

> 
> --
> Anders
> 
> 
> Wed Dec 10 2014 at 8:47:50 AM skrev Martin Sandve Alnæs
> <[email protected]
> >:
> 
> >  Do you have a suggestion for a work flow while developing? I.e.
> > building intermediate uncommitted work repeatedly on top of a
> > hashdist stack without storing every version in hashdist? Maybe
> > best to have a hashdist stack with all dependencies only and just
> > work with fenics components outside hashdist?
> >
> > Martin
> > 10. des. 2014 08:06 skrev "Anders Logg" <[email protected]>:
> >
> >  Yes, it is quite fantastic isn't it... :-)
> >>
> >>  The problem you noted with the name of the config file has been
> >> fixed.
> >>
> >>  The idea is that one can build many different
> >> configurations/versions of FEniCS and keep the config files around
> >> for switching between them.
> >>
> >>  Note that each config file contains info about which versions of
> >> FEniCS were used to build so it's easy to go back later and check
> >> which build one has.
> >>
> >>  --
> >> Anders
> >>
> >>
> >> Wed Dec 10 2014 at 6:41:59 AM skrev Simon Funke
> >> <[email protected]
> >> >:
> >>
> >>>  This is fantastic! The installation of the dev version with
> >>> hasdist works fine on my Ubuntu 14.10 laptop.
> >>>
> >>>  My only comment is that the script tells me at the end:
> >>>
> >>>  """
> >>> For your convenience, a configuration file named fenics.dev has
> >>> been created in the current directory. For setting up your
> >>> environment, you should issue the following command:
> >>>
> >>>    source fenics.master
> >>> """
> >>>
> >>>  The last line should be "source fenics.dev"
> >>>
> >>>
> >>>
> >>>    2014-12-09 22:46 GMT+01:00 Lizao Li <[email protected]>:
> >>>
> >>>>  @Johannes, the SLEPc patched worked. Thanks~ On Archlinux,
> >>>> these two lines builds FEniCS successfully:
> >>>>
> >>>>       TMP=/tmp/test; mkdir $TMP; cd $TMP; ln -s `which python2`
> >>>> python
> >>>>
> >>>
> >>>> wget -O - http://fenicsproject.org/fenics-install.sh | bash
> >>>>
> >>>>       Since python is included in the package, it is probably a
> >>>> good idea to include ipython as well. The default repl is a pain
> >>>> to use.
> >>>>
> >>>>  @Jan, I tried GCC4.8.2 on the same CentOS and it still fails
> >>>> with the same error. Upon digging further into the build log, it
> >>>> seems dolfin did something funny:
> >>>>
> >>>>  2014/12/09 14:50:53 - INFO: [package:run_job] -- The C compiler
> >>>> identification is GNU 4.4.7
> >>>> 2014/12/09 14:50:53 - INFO: [package:run_job] -- The CXX compiler
> >>>> identification is GNU 4.4.7
> >>>> 2014/12/09 14:50:53 - INFO: [package:run_job] -- Check for
> >>>> working C compiler: * /usr/bin/cc*
> >>>> 2014/12/09 14:50:54 - INFO: [package:run_job] -- Check for
> >>>> working C compiler: * /usr/bin/cc* -- works
> >>>> 2014/12/09 14:50:54 - INFO: [package:run_job] -- Detecting C
> >>>> compiler ABI info
> >>>> 2014/12/09 14:50:54 - INFO: [package:run_job] -- Detecting C
> >>>> compiler ABI info - done
> >>>> 2014/12/09 14:50:54 - INFO: [package:run_job] -- Check for
> >>>> working CXX compiler: /usr/bin/c++
> >>>> 2014/12/09 14:50:54 - INFO: [package:run_job] -- Check for
> >>>> working CXX compiler: /usr/bin/c++ -- works
> >>>>
> >>>>  Note that in the above cc and c++ (wrong version), not gcc and
> >>>> g++ (correct version), were used. I think symlink gcc probably
> >>>> won't work here because libc and includes are also going to be
> >>>> wrong, unlike the python case where the symlinked python is only
> >>>> used to run the hashdist script. Shouldn't dolfin cmake choose
> >>>> the compiler following some priority like mpic++>g++>c++ ?
> >>>>
> >>>
> >>>> On Tue, Dec 9, 2014 at 11:16 AM, Jan Blechta <
> >>>> [email protected]> wrote:
> >>>>
> >>>>> Building mpi4py fails on Ubuntu 12.04 because of some problem
> >>>>> with system Cython (see below for full log)
> >>>>>
> >>>>> ImportError: /usr/lib/pymodules/python2.7/Cython/Compiler/Code.so:
> >>>>> undefined symbol: PyUnicodeUCS4_DecodeUTF8
> >>>>>
> >>>>> Shouldn't be Cython built also?
> >>>>>
> >>>>> Jan
> >>>>>
> >>>>>
> >>>>> 2014/12/09 18:02:56 - INFO: [package:run_job] running install
> >>>>> 2014/12/09 18:02:56 - INFO: [package:run_job] running build
> >>>>> 2014/12/09 18:02:56 - INFO: [package:run_job] running build_src
> >>>>> 2014/12/09 18:02:56 - INFO: [package:run_job] cythonizing
> >>>>> 'mpi4py.MPI.pyx' -> 'mpi4py.MPI.c' 2014/12/09 18:02:56 - INFO:
> >>>>> [package:run_job] Traceback (most recent call last): 2014/12/09
> >>>>> 18:02:56 - INFO: [package:run_job]   File "setup.py", line 624,
> >>>>> in <module> 2014/12/09 18:02:56 - INFO: [package:run_job]
> >>>>> main() 2014/12/09 18:02:56 - INFO: [package:run_job]   File
> >>>>> "setup.py", line 621, in main 2014/12/09 18:02:56 - INFO:
> >>>>> [package:run_job] run_setup() 2014/12/09 18:02:56 - INFO:
> >>>>> [package:run_job]   File "setup.py", line 493, in run_setup
> >>>>> 2014/12/09 18:02:56 - INFO: [package:run_job]     **metadata)
> >>>>> 2014/12/09 18:02:56 - INFO: [package:run_job]   File
> >>>>>
> >>>>> "/srv/groot/blechta/.hashdist/tmp/mpi4py-dps5vsljzl7g-1/conf/mpidistutils.py",
> >>>>> line 441, in setup 2014/12/09 18:02:56 - INFO: [package:run_job]
> >>>>> return fcn_setup(**attrs) 2014/12/09 18:02:56 - INFO:
> >>>>> [package:run_job]   File
> >>>>>
> >>>>> "/srv/groot/blechta/.hashdist/bld/python/ctzx2dm36c6d/lib/python2.7/distutils/core.py",
> >>>>> line 151, in setup 2014/12/09 18:02:56 - INFO: [package:run_job]
> >>>>> dist.run_commands() 2014/12/09 18:02:56 - INFO:
> >>>>> [package:run_job] File
> >>>>>
> >>>>> "/srv/groot/blechta/.hashdist/bld/python/ctzx2dm36c6d/lib/python2.7/distutils/dist.py",
> >>>>> line 953, in run_commands 2014/12/09 18:02:56 - INFO:
> >>>>> [package:run_job]     self.run_command(cmd) 2014/12/09 18:02:56
> >>>>> - INFO: [package:run_job]   File
> >>>>>
> >>>>> "/srv/groot/blechta/.hashdist/bld/python/ctzx2dm36c6d/lib/python2.7/distutils/dist.py",
> >>>>> line 972, in run_command 2014/12/09 18:02:56 - INFO:
> >>>>> [package:run_job]     cmd_obj.run() 2014/12/09 18:02:56 - INFO:
> >>>>> [package:run_job]   File
> >>>>>
> >>>>> "/srv/groot/blechta/.hashdist/bld/python/ctzx2dm36c6d/lib/python2.7/distutils/command/install.py",
> >>>>> line 563, in run 2014/12/09 18:02:56 - INFO: [package:run_job]
> >>>>> self.run_command('build') 2014/12/09 18:02:56 - INFO:
> >>>>> [package:run_job]   File
> >>>>>
> >>>>> "/srv/groot/blechta/.hashdist/bld/python/ctzx2dm36c6d/lib/python2.7/distutils/cmd.py",
> >>>>> line 326, in run_command 2014/12/09 18:02:56 - INFO:
> >>>>> [package:run_job]     self.distribution.run_command(command)
> >>>>> 2014/12/09 18:02:56 - INFO: [package:run_job]   File
> >>>>>
> >>>>> "/srv/groot/blechta/.hashdist/bld/python/ctzx2dm36c6d/lib/python2.7/distutils/dist.py",
> >>>>> line 972, in run_command 2014/12/09 18:02:56 - INFO:
> >>>>> [package:run_job]     cmd_obj.run() 2014/12/09 18:02:56 - INFO:
> >>>>> [package:run_job]   File
> >>>>>
> >>>>> "/srv/groot/blechta/.hashdist/bld/python/ctzx2dm36c6d/lib/python2.7/distutils/command/build.py",
> >>>>> line 127, in run 2014/12/09 18:02:56 - INFO: [package:run_job]
> >>>>> self.run_command(cmd_name) 2014/12/09 18:02:56 - INFO:
> >>>>> [package:run_job]   File
> >>>>>
> >>>>> "/srv/groot/blechta/.hashdist/bld/python/ctzx2dm36c6d/lib/python2.7/distutils/cmd.py",
> >>>>> line 326, in run_command 2014/12/09 18:02:56 - INFO:
> >>>>> [package:run_job]     self.distribution.run_command(command)
> >>>>> 2014/12/09 18:02:56 - INFO: [package:run_job]   File
> >>>>>
> >>>>> "/srv/groot/blechta/.hashdist/bld/python/ctzx2dm36c6d/lib/python2.7/distutils/dist.py",
> >>>>> line 972, in run_command 2014/12/09 18:02:56 - INFO:
> >>>>> [package:run_job]     cmd_obj.run() 2014/12/09 18:02:56 - INFO:
> >>>>> [package:run_job]   File "setup.py", line 594, in build_sources
> >>>>> 2014/12/09 18:02:56 - INFO: [package:run_job]     wdir='src',
> >>>>> force=cmd.force, VERSION=CYTHON) 2014/12/09 18:02:56 - INFO:
> >>>>> [package:run_job]   File "setup.py", line 573, in run_cython
> >>>>> 2014/12/09 18:02:56 - INFO: [package:run_job]     wdir=wdir)
> >>>>> 2014/12/09 18:02:56 - INFO: [package:run_job]   File
> >>>>>
> >>>>> "/srv/groot/blechta/.hashdist/tmp/mpi4py-dps5vsljzl7g-1/conf/cythonize.py",
> >>>>> line 9, in cythonize 2014/12/09 18:02:56 - INFO:
> >>>>> [package:run_job] from Cython.Compiler.Main import \ 2014/12/09
> >>>>> 18:02:56 - INFO: [package:run_job]   File
> >>>>> "/usr/lib/pymodules/python2.7/Cython/Compiler/Main.py", line
> >>>>> 18, in <module> 2014/12/09 18:02:56 - INFO:
> >>>>> [package:run_job]     import Code 2014/12/09 18:02:56 - INFO:
> >>>>> [package:run_job]
> >>>>> ImportError: /usr/lib/pymodules/python2.7/Cython/Compiler/Code.so:
> >>>>> undefined symbol: PyUnicodeUCS4_DecodeUTF8 2014/12/09 18:02:56
> >>>>> - ERROR: [package:run_job] Command '[u'/bin/bash',
> >>>>> '_hashdist/build.sh']' returned non-zero exit status 1
> >>>>> 2014/12/09 18:02:56 - ERROR: [package:run_job] command failed
> >>>>> (code=1); raising
> >>>>> _______________________________________________ fenics mailing
> >>>>> list [email protected]
> >>>>> http://fenicsproject.org/mailman/listinfo/fenics
> >>>>>
> >>>>
> >>>>
> >>>>
> >>>>  --
> >>>>  Lizao (Larry) Li
> >>>> Univeristy of Minnesota
> >>>>
> >>>> _______________________________________________
> >>>> fenics mailing list
> >>>> [email protected]
> >>>> http://fenicsproject.org/mailman/listinfo/fenics
> >>>>
> >>>>
> >>>
> >>>
> >>>  --
> >>> Simon Funke
> >>>
> >>> Imperial College London
> >>> Applied Modelling and Computation Group
> >>> Office: 3.56R Royal School of Mines Building
> >>> Tel: +44 (0)20 759 41363
> >>> Email: [email protected]
> >>>
> >>
> >> _______________________________________________
> >> fenics mailing list
> >> [email protected]
> >> http://fenicsproject.org/mailman/listinfo/fenics
> >>
> >>

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

Reply via email to