[firedrake] Progress on installing PyOP2/firedrake on ARCHER
Florian Rathgeber
f.rathgeber10 at imperial.ac.uk
Sun Sep 7 21:47:51 BST 2014
Hi Eike,
Apologies for not keeping this wiki page up to date and thanks for your
input! I have now updated the wiki page. More comments inline.
On 07/09/14 12:50, Eike Mueller wrote:
> Dear firedrakers,
>
> I'm just going through the instructions for installing firedrake on
> ARCHER as
> per https://github.com/firedrakeproject/firedrake-bench/wiki/Archer . I
> ran into a couple of issues you might be interested in, so I thought I
> keep you updated on my progress. The content of my firedrake.env script
> is listed below and also attached (I use export instead of setenv since
> I work with the bash shell - I think this is the default on ARCHER,
> isn't it?). Note that I have to unload the python module, otherwise I
> get a conflict with anaconda.
You're right about the anaconda conflict and the setenv in that listing
is a copy & paste fail on my part.
> ======== 'module' command broken by anaconda ========
>
> However, after sourcing firedrake.env the 'module' command does not work
> any longer:
>
> eike at eslogin003 $ module list
> init.c(479):ERROR:161: Cannot initialize TCL
>
> I think the reason is the following addition to LD_LIBRARY_PATH in
> ${FDRAKE_DIR}/modules/fdrake-python-env
>
> prepend-path LD_LIBRARY_PATH "$env(ANACONDA_LIB)"
>
> If I remove ${ANACONDA_LIB} from LD_LIBRARY_PATH afterwards
> (LD_LIBRARY_PATH=`echo $LD_LIBRARY_PATH | sed 's/\/work\/y07\/y07\/cse\/anaconda\/1.9.2\/lib//g'`)
> the module command works again (I also tried to attend ${ANACONDA_LIB}
> at the end of LD_LIBRARY_PATH, but then I get the same problem again).
You're exactly right again: it seems that anaconda contains a version of
the TCL libraries which are incompatible with those use by the
environment modules. I'm not sure how to work around this, since we need
the anaconda libs (as you figured out later) - will open a ticket.
> ======== Cloning PyOP2 and firedrake repositories from github ========
>
> Also, I could not clone PyOP2 and firedrake via
>
> git clone git at github.com:OP2/PyOP2.git
> git clone git at github.com:firedrakeproject/firedrake.git
>
> I get the following error message:
>
> eike at eslogin008 $ git clone git at github.com:OP2/PyOP2.git
> Cloning into 'PyOP2'...
> Permission denied (publickey).
> fatal: Could not read from remote repository.
> Please make sure you have the correct access rights
> and the repository exists.
>
> That might be an issue with the git configuration on ARCHER, though.
>
> I fixed this by just cloning via https:
>
> git clone https://github.com/OP2/PyOP2.git
> git clone https://github.com/firedrakeproject/firedrake.git
I've changed the wiki page to clone via https, thanks!
> ======== Building PyOP2 ========
> When I try to build PyOP2 with
>
> eike at eslogin002 $ python setup.py build_ext --inplace
>
> I get the following error message (see attached pyop2_call1.log):
>
> [...]
> File
> "/work/y07/y07/cse/anaconda/1.9.2/lib/python2.7/site-packages/Cython/Distutils/build_ext.py",
> line 238, in cython_sources
> for i in extension.include_dirs:
> File "setup.py", line 83, in include_dirs
> from numpy import get_include
> ImportError: cannot import name get_include
>
> This is odd, since 'from numpy import get_include' does work if I try it
> in the interactive python shell. If I then run 'python setup.py
> build_ext --inplace' again, the build process seems to go through
> (pyop2_call2.log).
This seems to happen because (for reasons I can't figure out) setuptools
doesn't detect that NumPy is already installed and builds it from
source. The primary cause of the error you're seeing is this:
https://stackoverflow.com/a/21621493
> ======== Building firedrake ========
>
> this seems to go though ok (see attached file firedrake.log).
>
> ======== Running poisson example code ========
>
> I tried to run the example; my version of the modified firedrake.tpl is
> attached (notice that I unload the python module to avoid conflicts with
> anaconda). Unfortunately it doesn't seem to work, I get an error in
> fd_poisson.0101.541091.sdb.log trying to load the python libraries:
>
> python: error while loading shared libraries: libpython2.7.so.1.0:
> cannot open shared object file: No such file or directory
This is because you've removed the anaconda lib path, which also
contains the Python libraries themselves, from LD_LIBRARY_PATH
> All three output files are attached below as well.
>
> If this helps, I'm very happy to edit the wiki.
Absolutely, feel free to edit the wiki if you find more errors or things
that are unclear.
Florian
> Cheers,
>
> Eike
>
> *** content of firedrake.env ***
>
> module swap PrgEnv-cray PrgEnv-gnu
> module unload python
> module add anaconda
>
> # Add fdrake module path
> export FDRAKE_DIR=/work/y07/y07/fdrake
> module use "$FDRAKE_DIR/modules"
>
> # Load build environment
> module load fdrake-build-env
> module load fdrake-python-env
>
> LD_LIBRARY_PATH=`echo $LD_LIBRARY_PATH | sed 's/\/work\/y07\/y07\/cse\/anaconda\/1.9.2\/lib//g'`
>
> export PYTHONPATH=$WORK/firedrake-bench:$WORK/firedrake-bench/pybench:$WORK/firedrake:$WORK/PyOP2:$PYTHONPATH
>
>
> --
>
> Dr Eike Hermann Mueller
> Research Associate (PostDoc)
>
> Department of Mathematical Sciences
> University of Bath
> Bath BA2 7AY, United Kingdom
>
> +44 1225 38 5803
> e.mueller at bath.ac.uk <mailto:e.mueller at bath.ac.uk>
> http://people.bath.ac.uk/em459/
-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/pkcs7-signature
Size: 2980 bytes
Desc: S/MIME Cryptographic Signature
URL: <http://mailman.ic.ac.uk/pipermail/firedrake/attachments/20140907/15218b5b/attachment.p7s>
More information about the firedrake
mailing list