problem with libpetsc.so.3.1

Bug #1013466 reported by calbaker
2
Affects Status Importance Assigned to Milestone
DOLFIN
Invalid
Undecided
Unassigned

Bug Description

I am attempting to install FEniCS/dolfin within ~/.local using: http://fenicsproject.org/download/installation_from_source.html#installation-from-source

I am doing this because I use Enthought Python Distribution rather than the native python in Ubuntu 12.04. I can import ufc, ufl, and so forth, but importing dolfin gives me the following error:

In [5]: import dolfin
---------------------------------------------------------------------------
ImportError Traceback (most recent call last)
/home/chad/<ipython-input-5-7d9b2153bc0b> in <module>()
----> 1 import dolfin

/home/chad/.local/lib/python2.7/site-packages/dolfin/__init__.pyc in <module>()
     21
     22 # Import names from the compiled cpp module

---> 23 from dolfin.cppimports import *
     24 from dolfin.cppimports import __version__, __swigversion__
     25

/home/chad/.local/lib/python2.7/site-packages/dolfin/cppimports.py in <module>()
      2
      3 #--- Imports the SWIG-generated Python code (C++ interface) ---

----> 4 import dolfin.cpp as cpp
      5 __swigversion__ = cpp.__swigversion__
      6 __version__ = cpp.__dolfinversion__

/home/chad/.local/lib/python2.7/site-packages/dolfin/cpp.py in <module>()
     28 fp.close()
     29 return _mod
---> 30 _cpp = swig_import_helper()
     31 del swig_import_helper
     32 else:

/home/chad/.local/lib/python2.7/site-packages/dolfin/cpp.py in swig_import_helper()
     24 if fp is not None:
     25 try:
---> 26 _mod = imp.load_module('_cpp', fp, pathname, description)
     27 finally:
     28 fp.close()

ImportError: /usr/lib/petscdir/3.1/linux-gnu-c-opt/lib/libpetsc.so.3.1: undefined symbol: H5Pset_dxpl_mpio

Any ideas on how to fix this?

Revision history for this message
Johannes Ring (johannr) wrote :

Sorry, this is not a bug in DOLFIN. It is the same problem that you reported in question #199888.

Changed in dolfin:
status: New → Invalid
Revision history for this message
calbaker (calbaker) wrote :
Download full text (6.0 KiB)

Actually, it's not exactly the same problem. In question #199888, I was having a problem with EPD using dolfin from the Ubuntu repositories. Now, I compiled and installed all the fenics components in ~/.local and a similar problem is occuring.

This was how your machine solves the problem:
"For me, the H5Pset_dxpl_mpio symbol is defined in /usr/lib/libhdf5.so.6 and /usr/lib/libpetsc.so.3.1 is dynamically linked to it."

If I am required to make a link to solve the problem, then I would have thought it was a bug.

In addition, I completely removed EPD from my PATH environment variable, and with python and fenics from the Ubuntu repository, I get the following error:

In [1]: run d1_p2D.py
Reading DOLFIN parameters from file "dolfin_parameters.xml".
In instant.import_module_directly: Failed to import module 'fceecf1bb9e182af7207a4b16af02614b9d688fb' from '/home/chad/.instant/cache';
ImportError:/home/chad/.instant/cache/fceecf1bb9e182af7207a4b16af02614b9d688fb/_fceecf1bb9e182af7207a4b16af02614b9d688fb.so: undefined symbol: PyUnicodeUCS2_Decode;
Failed to import module found in cache. Modulename: 'fceecf1bb9e182af7207a4b16af02614b9d688fb';
Path: '/home/chad/.instant/cache';
ImportError:/home/chad/.instant/cache/fceecf1bb9e182af7207a4b16af02614b9d688fb/_fceecf1bb9e182af7207a4b16af02614b9d688fb.so: undefined symbol: PyUnicodeUCS2_Decode;
---------------------------------------------------------------------------
AssertionError Traceback (most recent call last)
/usr/lib/python2.7/dist-packages/IPython/utils/py3compat.pyc in execfile(fname, *where)
    173 else:
    174 filename = fname
--> 175 __builtin__.execfile(filename, *where)

/home/chad/Documents/dolfin-examples-1.0/stationary/poisson/d1_p2D.py in <module>()
     13 mesh = UnitSquare(6, 4)
     14 #mesh = UnitCube(6, 4, 5)

---> 15 V = FunctionSpace(mesh, 'Lagrange', 1)
     16
     17 # Define boundary conditions

/home/chad/.local/lib/python2.7/site-packages/dolfin/functions/functionspace.pyc in __init__(self, mesh, family, degree, form_degree, restriction)
    351
    352 # Initialize base class

--> 353 FunctionSpaceBase.__init__(self, mesh, element)
    354
    355 self.___degree = degree

/home/chad/.local/lib/python2.7/site-packages/dolfin/functions/functionspace.pyc in __init__(self, mesh, element)
     75
     76 # JIT-compile element to get ufc_element and ufc_dofmap

---> 77 ufc_element, ufc_dofmap = jit(self._ufl_element)
     78
     79 # Instantiate DOLFIN FiniteElement and DofMap

/home/chad/.local/lib/python2.7/site-packages/dolfin/compilemodules/jit.pyc in mpi_jit(*args, **kwargs)
     64 # Just call JIT compiler when running in serial

     65 if MPI.num_processes() == 1:
---> 66 return local_jit(*args, **kwargs)
     67
     68 # Compile first on process 0

/home/chad/.local/lib/python2.7/site-packages/dolfin/compilemodules/jit.pyc in jit(form, form_compiler_parameters, common_cell)
    152 raise RuntimeError, "Form compiler must implement the jit function."
    153
--> 154 return jit_compile(for...

Read more...

Revision history for this message
calbaker (calbaker) wrote :

The bottom line is that I have tried three ways to run dolfin:

1. Compile and install in .local procduces this error:
ImportError: /usr/lib/petscdir/3.1/linux-gnu-c-opt/lib/libpetsc.so.3.1: undefined symbol: H5Pset_dxpl_mpio

2. Install from Ubuntu repositories and add to EPD path produces this error:
ImportError: /usr/lib/libpetsc.so.3.1: undefined symbol: H5Pset_dxpl_mpio

3. Remove EPD from path. Install fenics through Ubuntu. Run example examples-1.0/stationary/poisson/d1_p2D.py. Error:
ImportError:/home/chad/.instant/cache/fceecf1bb9e182af7207a4b16af02614b9d688fb/_fceecf1bb9e182af7207a4b16af02614b9d688fb.so: undefined symbol: PyUnicodeUCS2_Decode;

So no matter what, I cannot get dolfin running. I'm going to try make the libpetsc link to see if that works. I'll post the result.

Revision history for this message
calbaker (calbaker) wrote :

On creating that link, I get the following error:

/usr/lib/libslepc.so.3.1: undefined symbol: _PetscLogPHC

If this is not a bug, I'm certainly not planning to use FEniCS. Time to try FiPy I guess. At least I can get it to run.

Revision history for this message
calbaker (calbaker) wrote :

I completely reinstalled Ubuntu, and I am now able to run dolfin with EPD after having compiled and installed fenics to ~/.local. I have no idea why this worked.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.