[firedrake] problem with scripts/firedrake-clean

Eike Mueller e.mueller at bath.ac.uk
Fri Nov 14 16:36:15 GMT 2014


Hi Florian,

I think I now know what is going on: if I run the script with 

eikemueller at 138-38-188-207 $ ./scripts/firedrake-clean

it picks up a different python version than if I use

eikemueller at 138-38-188-207 $ python ./scripts/firedrake-clean

I get 2.7.3 in the first case but 2.7.8 in the latter. 2.7.3 is an old Canopy python installation, and the link in my /usr/local/bin points to this.

However, ‘python’ is aliased to the (correct) version 2.7.8 which I get when I explicitly invoke python:

eikemueller at 138-38-188-207 $ python
Python 2.7.8 (default, Jul 13 2014, 17:11:32) 
[GCC 4.2.1 Compatible Apple LLVM 5.1 (clang-503.0.40)] on darwin
Type "help", "copyright", "credits" or "license" for more information.

The confusing thing is that ‘which’ tells me that he version in /usr/local/bin seems to be the version which is used, but it is not due the alias:

eikemueller at 138-38-188-207 $ which python
/usr/local/bin/python

eikemueller at 138-38-188-207 $ type -a python
python is aliased to `/opt/local/bin/python2.7'
python is /usr/local/bin/python
python is /opt/local/Library/Frameworks/Python.framework/Versions/2.7/bin/python
python is /usr/local/bin/python
python is /usr/bin/python

Apparently env (which is used in the firedrake-clean script to invoke python via "#!/usr/bin/env python") uses the first version it finds in PATH, which is set to:

/usr/local/openmpi-.8.1/bin/:/usr/local/bin:/Applications/LyX.app/Contents/MacOS/:/opt/local/Library/Frameworks/Python.framework/Versions/2.7/bin/:/Users/eikemueller/PostDocBath/EllipticSolvers/petsc/arch-darwin-c-opt/bin:/Users/eikemueller/Tools/fcm-2014.06.0/bin/:/Users/eikemueller/Tools/fcm-2014.06.0/lib/FCM/:/usr/local/Dune2.2.1/bin/:/opt/pkgconfig/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/opt/X11/bin:/usr/texbin:/Users/eikemueller/Library/bin

so it picks up the (wrong) version in /usr/local/bin.

Anyway, I now simply deleted the symlink in /usr/local/bin and then it all works again.

All this confusion must have come from my recent upgrade to Yosemite (which I still regret…).

Thanks again for your help,

Eike

--

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
http://people.bath.ac.uk/em459/

> On 14 Nov 2014, at 08:46, Florian Rathgeber <florian.rathgeber at imperial.ac.uk> wrote:
> 
> On 14/11/14 08:40, Eike Mueller wrote:
>> Hi Florian,
>> 
>>> This means that at some point you have built NumPy 1.9 as a dependency
>>> for either PyOP2, Firedrake or petsc4py and the built petsc4py against
>>> NumPy 1.9. However now you seem to be using the system NumPy 1.7.
>>> 
>>> Remove NumPy 1.9 and rebuild petsc4py.
>> 
>> how can I delete numpy 1.9, or even find out where it is installed?
> 
> It'll be installed in the same prefix location as whatever package it
> was installed as a dependency for. I usually type `pydoc numpy` to find
> out which NumPy is picked up and from where.
> 
>> Strangely, I seem to have 1.8.0 installed:
>> 
>> eikemueller at 138-38-188-207 $ python
>> Python 2.7.8 (default, Jul 13 2014, 17:11:32) 
>> [GCC 4.2.1 Compatible Apple LLVM 5.1 (clang-503.0.40)] on darwin
>> Type "help", "copyright", "credits" or "license" for more information.
>> 
>>>>> import numpy
>>>>> print numpy.__version__
>> 1.8.0
> 
> Hmm, that's odd. Where is this coming from? Is this the system installed
> one? It *might* also be your version of Cython that plays a role because
> I *think* numpy.pxd comes with Cython.
> 
>> Also, why does it only crash in the firedrake-clean script, but works
>> without any problems when I load firedrake or petsc4py?
> 
> I suspect there must be a difference in PYTHONPATH for the environment
> you run firedrake in and execute the firedrake-clean script?
> 
> Florian
> 
>> Thanks,
>> 
>> Eike
> 
> _______________________________________________
> firedrake mailing list
> firedrake at imperial.ac.uk
> https://mailman.ic.ac.uk/mailman/listinfo/firedrake

-------------- next part --------------
HTML attachment scrubbed and removed


More information about the firedrake mailing list