Hi Nicolas, Python 3.6 is indeed a hard requirement. Firedrake uses f strings which aren’t part of Python 3.5 so you’ll get syntax errors if you use 3.5. If you don’t have root on a machine then it’s fairly simple to just build Python from source, and in fact that’s what we do on the UK national supercomputer. Python provide instructions for doing this: https://docs.python.org/3/using/unix.html Our Python build script for ARCHER, which might be a useful reference but does contain a lot of system-specific details, is here: https://github.com/firedrakeproject/firedrake-archer/blob/master/build_pytho... Regards, David From: <firedrake-bounces@imperial.ac.uk> on behalf of Karin&NiKo <niko.karin@gmail.com> Date: Thursday, 15 October 2020 at 09:33 To: Lawrence Mitchell <wence@gmx.li> Cc: firedrake <firedrake@imperial.ac.uk> Subject: Re: [firedrake] Troubles when trying to update firedrake And an extra question : do you have some experience on how to set-up a python version (say 3.6.5) on a computer on which you do not have root privileges that could be used in roder to build firedrake? Le jeu. 15 oct. 2020 à 08:53, Karin&NiKo <niko.karin@gmail.com<mailto:niko.karin@gmail.com>> a écrit : Mmm... No it does not help. I see that python3.5.3 is used in my firedrake install since it is the default python3 version on my computer. Is python3.6 *really* mandatory? Nicolas Le mer. 14 oct. 2020 à 18:42, Lawrence Mitchell <wence@gmx.li<mailto:wence@gmx.li>> a écrit :
On 14 Oct 2020, at 15:49, Karin&NiKo <niko.karin@gmail.com<mailto:niko.karin@gmail.com>> wrote:
Dear Firedrakers,
I installed firedrake with the following options few months ago : python3 firedrake-install --disable-ssh --mpiexec mpirun.openmpi --mpicc mpicc.openmpi --mpicxx mpicxx.openmpi --mpif90 mpif90.openmpi
I am now trying to update the code. So I am activating the virtualenv and I run : firedrake-update I then get the error : Running firedrake-update --verbose Traceback (most recent call last): File "firedrake-update", line 1254, in <module> mpiexec_loc = shutil.which(args.mpiexec) AttributeError: 'Namespace' object has no attribute 'mpiexec'
This error is that the "args" object has no "mpiexec" attribute. I'm not sure how that happens. Does it help to try and recover from a broken update script following the advice here: https://www.firedrakeproject.org/download.html#recovering-from-a-broken-inst... Lawrence