Bug#959387: [Re] paraview-dev: missing cmake vtk modules in the dev package, cannot use

Jakob Meng JakobMeng at web.de
Fri Aug 28 11:03:58 BST 2020


PPPS:

ParaView installs its Python modules as well as all the VTK Python
modules as part of its CMake install process. If python3-vtk8 [1] ever
enters Debian this might cause file collisions, as both python3-paraview
and python3-vtk8 install files to the same locations and hence cannot be
co-installed. So either we skip installing VTK Python modules during
ParaView install or we install those ParaView's VTK Python modules to a
different location by setting e.g. VTK_PYTHON_SITE_PACKAGES_SUFFIX. When
skipping VTK Python module install, then we have to make sure that all
VTK-related files in ParaView and VTK packages do match exactly and have
the same patches applied. Else Python, ParaView or its Python modules
might crash or even worse cause silent data and memory corruption bugs.

Just calling 'rm -fr debian/tmp/usr/lib/python3*/dist-packages/vtk*' in
ParaView's debian/rules is not a proper workaround. ParaView 5.7 from
Debian Sid uses a development version of VTK8 (not far from VTK9
release?) [4], while Debian's dedicated VTK8 package [1] is at 8.2, so
both VTK versions have many differences.

ParaView has CMake flags to build with an external VTK install [6], but
this is not supported at least in ParaView 5.7.0 [7].

BTW, these incompatibilities affect older Debian releases as well. For
example, install both packages 'paraview-python' [2] and 'python3-vtk7'
[3] on Debian 10 (Buster), run pvpython and enter 'import vtk'. ParaView
Python will crash. So always remember to enter 'import paraview.vtk' on
Debian and Ubuntu [5].

To avoid these bugs, my reworked ParaView package does not allow
parallel installs of python3-vtk7 or python3-vtk8 [8]. Both paraview-dev
and python3-paraview install a lot (all?) of VTK's headers, libraries
and Python modules anyway.

Ref.:
[1] https://salsa.debian.org/science-team/vtk8/
[2] https://packages.debian.org/buster/paraview-python
[3] https://packages.debian.org/buster/python3-vtk7
[4]
https://salsa.debian.org/science-team/paraview/-/blob/master/VTK/CMake/vtkVersion.cmake
[5] https://blog.kitware.com/import-vtk-or-import-paraview-vtk/
[6] https://github.com/Kitware/ParaView/blob/v5.8.1/CMakeLists.txt#L218
[7] https://github.com/Kitware/ParaView/blob/v5.7.0/CMakeLists.txt#L290
[8]
https://git.inf.h-brs.de/jmeng2m/debian-package-paraview/-/blob/debian/5.7.0+ds.1-3/debian/control#L172


-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 963 bytes
Desc: OpenPGP digital signature
URL: <http://alioth-lists.debian.net/pipermail/debian-science-maintainers/attachments/20200828/0e3b7733/attachment-0001.sig>


More information about the debian-science-maintainers mailing list