I would like to use ILU preconditioning with the PETSc backend in parallel. By default, with the code
```
from dolfin import *
mesh = UnitSquareMesh(10, 10, 'crossed')
V = FunctionSpace(mesh, 'CG', 1)
u = TrialFunction(V)
v = TestFunction(V)
a = dot(grad(u), grad(v)) * dx
L = 1.0 * v * dx
A = assemble(a)
b = assemble(L)
bcs = DirichletBC(V, 0.0, 'on_boundary')
bcs.apply(A, b)
solver = KrylovSolver('cg', 'ilu')
sol = Function(V)
solver.solve(A, sol.vector(), b)
I'm getting the error message
[0]PETSC ERROR: --------------------- Error Message ------------------------------------
[0]PETSC ERROR: No support for this operation for this object type!
[0]PETSC ERROR: Matrix format mpiaij does not have a built-in PETSc ILU!
```
when run with mpiexec -n 2
.
Are there packages/options needed in the compilation of Dolfin/PETSc in order to get this to work? What are possible alternatives?