[vtkusers] Python wrapping (outside VTK source tree), almost there
Paul Melis
paul.melis at surfsara.nl
Mon Jul 27 06:05:43 EDT 2015
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 |
More information about the vtkusers
mailing list