On Wed, May 31, 2017 at 6:26 PM, Drew Parsons <dpars...@debian.org> wrote:
> $ instant-clean-3
> $ ipython3
> Python 3.5.3 (default, Jan 19 2017, 14:11:04)
> In [1]: from fenics import *  # dolfin module behaves the same
> In [2]: mesh = UnitSquareMesh(2, 2)
> In [3]: V = FunctionSpace(mesh, 'P', 1)
> In [4]: u = interpolate(Expression('x[0] + x[1]', degree=1), V)
> ...
> AssertionError: Failed to import module found in cache. Modulename: 
> 'dolfin_ee8f3791ac0426bc9e123d64557ccde25f2d90f2';
> Path: 
> '/home/user/.cache/instant/python3.5/cache/dolfin_ee8f3791ac0426bc9e123d64557ccde25f2d90f2';
> ImportError:/home/user/.cache/instant/python3.5/cache/dolfin_ee8f3791ac0426bc9e123d64557ccde25f2d90f2/_dolfin_ee8f3791ac0426bc9e123d64557ccde25f2d90f2.so:
>  undefined symbol: PyClass_Type;

The problem here is that Python 2 header files are used. This comes
from VTK, which is built against Python 2 only. The solution is to not
call `find_package(VTK)` and `include(${VTK_USE_FILE})` in
/usr/share/dolfin/cmake/UseDOLFIN.cmake. It can be verified that this
fixes the problem by removing these lines in UseDOLFIN.cmake.

This is a bug in dolfin, not instant. Drew: could you re-target this
to dolfin (perhaps libdolfin-dev)?

Johannes

-- 
debian-science-maintainers mailing list
debian-science-maintainers@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/debian-science-maintainers

Reply via email to