Try reverting to a PETSc commit predating the commit that Florian isolated. On 24 August 2014 19:18, Cotter, Colin J <colin.cotter@imperial.ac.uk> wrote:
Oh I see, it's an incompatibility between master Petsc and master petsc4py. I wouldn't have a clue how to fix that. Cjc On 24 Aug 2014 19:00, "David Ham" <David.Ham@imperial.ac.uk> wrote:
We don't have our own PETSc versions. We're tracking master. The PETSc crowd muck up fairly frequently. It sounds like you should be able to fix Petsc4py pretty easily. They usually accept patches for this sort of thing pretty fast.
David
On Sunday, August 24, 2014, Cotter, Colin J <colin.cotter@imperial.ac.uk> wrote:
Aren't the Firedrake petsc and petsc4py versions supposed to be compatible with each other? On 24 Aug 2014 16:58, "Florian Rathgeber" <f.rathgeber10@imperial.ac.uk> wrote:
The usual: interface change in PETSc (DMDASetDim renamed to DMDASetDimension) that hasn't been updated in petsc4py yet. The PETSc revision introducing that change is c73cfb54.
On 24/08/14 16:27, Cotter, Colin J wrote:
Dear Firedrakers, I just updated my petsc and petsc4py using the PyOP2 install instructions, to be precise I did:
sudo PETSC_CONFIGURE_OPTIONS="--download-ctetgen --download-triangle --download-chaco" pip install -U --no-deps git+https://bitbucket.org/petsc/petsc.git#egg=petsc unset PETSC_DIR unset PETSC_ARCH sudo pip install -U --no-deps git+ https://bitbucket.org/petsc/petsc4py.git
I then updated and built PyOP2, firedrake too.
Now, upon importing Firedrake, I get:
In [1]: from firedrake import *
---------------------------------------------------------------------------
ImportError Traceback (most recent call last) /home/cjc1/mercurial/shapefem/<ipython-input-1-379626444471> in <module>() ----> 1 from firedrake import *
/home/cjc1/firedrake/firedrake/firedrake/__init__.py in <module>() 1 # Ensure petsc is initialised by us before anything else gets in there.
----> 2 import petsc 3 del petsc 4 5 from ufl import *
/home/cjc1/firedrake/firedrake/firedrake/petsc.py in <module>() 2 import petsc4py 3 import sys ----> 4 petsc4py.init(sys.argv) 5 from petsc4py import PETSc # NOQA get flake8 to ignore unused import.
/usr/local/lib/python2.7/dist-packages/petsc4py/__init__.pyc in init(args, arch, comm) 40 """ 41 import petsc4py.lib ---> 42 PETSc = petsc4py.lib.ImportPETSc(arch) 43 args = petsc4py.lib.getInitArgs(args) 44 PETSc._initialize(args, comm)
/usr/local/lib/python2.7/dist-packages/petsc4py/lib/__init__.pyc in ImportPETSc(arch) 27 """ 28 path, arch = getPathArchPETSc(arch) ---> 29 return Import('petsc4py', 'PETSc', path, arch) 30 31 def getPathArchPETSc(arch=None):
/usr/local/lib/python2.7/dist-packages/petsc4py/lib/__init__.pyc in Import(pkg, name, path, arch) 62 pathlist = [os.path.join(path, arch)] 63 fo, fn, stuff = imp.find_module(name, pathlist) ---> 64 module = imp.load_module(fullname, fo, fn, stuff) 65 module.__arch__ = arch # save arch value 66 setattr(sys.modules[pkg], name, module)
ImportError: /usr/local/lib/python2.7/dist-packages/petsc4py/lib/PETSc.so: undefined symbol: DMDASetDim
What's wrong here?
all the best --Colin
_______________________________________________ firedrake mailing list firedrake@imperial.ac.uk https://mailman.ic.ac.uk/mailman/listinfo/firedrake
-- Dr David Ham Departments of Mathematics and Computing Imperial College London
http://www.imperial.ac.uk/people/david.ham
_______________________________________________ firedrake mailing list firedrake@imperial.ac.uk https://mailman.ic.ac.uk/mailman/listinfo/firedrake