Two more observations/questions from a novice user:

* IPython is not part of the hashdist. That is if you load dolfin from
IPython you will load the non-hashdist version (if there is one).

* System Python modules libraries are not in the PYTONPATH when following
the instructions (for example scipy). On Ubunutu machines you get them by
running:

"export PYTHONPATH=/usr/lib/python2.7/dist-packages/:$PYTHONPATH"

* Is there an easy way to add more packages to the on click installation
(e.g. I like having ipython, scipy and dolfin-adjoint)?



2014-12-10 10:57 GMT+01:00 Anders Logg <[email protected]>:

> 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.
>
> --
> 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
>
>


-- 
Simon Funke

Center for Biomedical Computing
Simula Research Laboratory
Oslo, Norway
Email: [email protected]
_______________________________________________
fenics mailing list
[email protected]
http://fenicsproject.org/mailman/listinfo/fenics

Reply via email to