[vtkusers] Python wrapping (outside VTK source tree), almost there

David Gobbi david.gobbi at gmail.com
Mon Jul 27 09:03:47 EDT 2015


Hi Paul,

The list of PythonD libraries that you need to link is not exported, but it
can be built from a list of the modules that you derived your own classes
from, e.g.:

  set(VTK_MODULES_USED vtkInteractionStyle)
  set(VTK_PYTHOND_LIBS)
  foreach(TMP_LIB ${VTK_MODULES_USED})
    set(VTK_PYTHOND_LIBS ${VTK_PYTHOND_LIBS} ${TMP_LIB}PythonD)
  endforeach()

 - David

On Mon, Jul 27, 2015 at 4:05 AM, Paul Melis <paul.melis at surfsara.nl> wrote:

> Hi all,
>
> I'm trying to get a custom interactor (deriving from vtkInteractorStyle)
> wrapped in Python with VTK 6.2. This is with building the wrappers outside
> of the VTK source tree.
>
> I managed to piece together a set of cmake commands that at least
> generates wrapper code and compiles ok, based on
> http://www.vtk.org/Wiki/VTK/Python_Wrapping_FAQ and other sources.
>
> But it seems at least one of the Python-wrapped VTK libraries is not
> linked in, causing the module load in Python to fail:
>
> $ py -c 'import vtkGamepadPython'
> Traceback (most recent call last):
>   File "<string>", line 1, in <module>
> ImportError: ./vtkGamepadPython.so: undefined symbol:
> PyVTKClass_vtkInteractorStyleNew
>
> The missing symbol is in the libvtkRenderingCorePython library:
>
> $ nm -C -D ~/software/vtk-6.2.0-opengl2/lib/
> libvtkRenderingCorePython27D-6.2.so|grep PyVTKClass_vtkInteractorStyleNew
> 0000000000161aa0 T PyVTKClass_vtkInteractorStyleNew
>
> But the other wrapping examples I find on the web don't seem to explicitly
> add linking of ...Python?D... libraries, so I figure I'm missing some
> variable or other in the cmake calls somewhere that implicitly adds extra
> dependencies.
>
> As the whole wrapping infrastructure feels quite fragile already, I'd
> rather not add all kinds of hacks to get it working :)
>
> So if somebody knows The Right Way (TM) to get VTK wrapping in this
> situation to work...
>
> The relevant cmake code is at
>
> https://github.com/paulmelis/vtk-wrapping-example/blob/master/src/CMakeLists.txt
>
> The full code (just a few files) is at
> https://github.com/paulmelis/vtk-wrapping-example
>
> Regards,
> Paul
>
> --
>
> Paul Melis
> | Visualization group leader & developer | SURFsara |
> | Science Park 140 | 1098 XG Amsterdam |
> | T 020 800 1312 | paul.melis at surfsara.nl | www.surfsara.nl |
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://public.kitware.com/pipermail/vtkusers/attachments/20150727/19694993/attachment.html>


More information about the vtkusers mailing list