<div dir="ltr">I'm just trying to make sure that we're communicating the correct information back and forth here...<div><br></div><div>Are you saying that after adding <span style="font-size:12.8px">vtkWrappingPythonCore to target_link_libraries(), you were able to successfully compile your project, but when trying to import the module you saw unresolved symbol errors for PyVTKClass_New and other "PyVTK_*" methods?</span></div><div><span style="font-size:12.8px"><br></span></div><div><span style="font-size:12.8px">The vtkWrappingPythonCore library existed in VTK 5, as well, but it was called vtkPythonCore back then.</span></div><div><span style="font-size:12.8px"><br></span></div><div><span style="font-size:12.8px"> - David</span></div><div><span style="font-size:12.8px"><br></span></div></div><div class="gmail_extra"><br><div class="gmail_quote">On Mon, Oct 9, 2017 at 9:28 PM, Ronald Römer <span dir="ltr"><<a href="mailto:rroemer@gmail.com" target="_blank">rroemer@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div bgcolor="#FFFFFF" text="#000000">
<div class="m_-1998149975941547339moz-cite-prefix">There are still undefined symbols:<br>
<br>
00000000002074e0 d DW.ref.__gxx_personality_v0<span class=""><br>
U PyBool_FromLong<br>
U PyDict_SetItemString<br>
U PyErr_Occurred<br>
U PyInt_FromLong<br>
U PyModule_GetDict<br>
U PyString_FromString<br></span>
00000000000040f9 T PyVTKAddFile_<wbr>vtkPolyDataBooleanFilter<span class=""><br>
U PyVTKClass_New<br>
U PyVTKClass_Type<br>
U PyVTKClass_<wbr>vtkPolyDataAlgorithmNew<br></span>
0000000000004087 T PyVTKClass_<wbr>vtkPolyDataBooleanFilterNew<br>
U PyVTKObject_GetObject<br>
U PyVTKObject_SetFlag<br>
U PyVTKObject_Type<br>
U Py_FatalError<br>
U Py_InitModule4_64<br>
<br>
I think it is a problem with the modularized VTK, that is present
since version 6.<br>
<br>
<a href="http://libvtkWrappingPython27Core-6.3.so" target="_blank">libvtkWrappingPython27Core-6.<wbr>3.so</a> exists in the lib directory.<div><div class="h5"><br>
<br>
<br>
<br>
On 10.10.2017 05:18, David Gobbi wrote:<br>
</div></div></div><div><div class="h5">
<blockquote type="cite">
<div dir="ltr">Did it fail because it didn't find the library? Or
did it fail because it still had unresolved symbols?</div>
<div class="gmail_extra"><br>
<div class="gmail_quote">On Mon, Oct 9, 2017 at 9:14 PM, Ronald
Römer <span dir="ltr"><<a href="mailto:rroemer@gmail.com" target="_blank">rroemer@gmail.com</a>></span>
wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div bgcolor="#FFFFFF" text="#000000">
<div class="m_-1998149975941547339m_-3134541148717504743moz-cite-prefix">I
already tried this without any success. I have no idea
what is wrong with it. You can try to modify my code to
find out the correct necessary changes.<br>
<br>
Best regards<span class="m_-1998149975941547339HOEnZb"><font color="#888888"><br>
Ronald</font></span>
<div>
<div class="m_-1998149975941547339h5"><br>
<br>
<br>
On 10.10.2017 04:59, David Gobbi wrote:<br>
</div>
</div>
</div>
<div>
<div class="m_-1998149975941547339h5">
<blockquote type="cite">
<div dir="ltr">
<div>Hi Ronald,</div>
<div><br>
</div>
<div>Use the following:</div>
<div><br>
</div>
<div>target_link_libraries(${PROJEC<wbr>T_NAME}PythonD
${PROJECT_NAME} vtkWrappingPythonCore)</div>
<div><br>
</div>
<div>You might also have to add
vtkWrappingPythonCore to the components
for find_package(VTK).</div>
<div><br>
</div>
<div> - David</div>
<div><br>
</div>
<div class="gmail_extra"><br>
<div class="gmail_quote">On Mon, Oct 9, 2017 at
8:34 PM, Ronald Römer <span dir="ltr"><<a href="mailto:rroemer@gmail.com" target="_blank">rroemer@gmail.com</a>></span>
wrote:<br>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<div dir="ltr">
<div dir="ltr">
<div>
<div>
<div>
<div>
<div>
<div>Hello,<br>
<br>
</div>
I'm trying to fix a problem
with the python wrapper of my
library. In my CMakeLists.txt
there are the following lines:<br>
</div>
<div><br>
</div>
<div>find_package(VTK REQUIRED
COMPONENTS vtkFiltersSources
vtkIOLegacy
vtkFiltersExtraction
vtkFiltersGeometry
vtkFiltersModeling
vtkRenderingFreeType
NO_MODULE)<br>
<br>
include(${VTK_USE_FILE})<br>
</div>
<div><br>
if(VTK_WRAP_PYTHON)<br>
find_package(PythonLibs
2.7 REQUIRED)<br>
<br>
if(PYTHONLIBS_FOUND)<br>
<br>
include_directories(${PYTHON_I<wbr>NCLUDE_DIRS}
${PROJECT_SOURCE_DIR})<br>
<br>
include(vtkWrapPython)<br>
<br>
vtk_wrap_python3(${PROJECT_NAM<wbr>E}Python
${PROJECT_NAME}Python_srcs
vtkPolyDataBooleanFilter.cxx)<br>
<br>
add_library(${PROJECT_NAME}Pyt<wbr>honD
${${PROJECT_NAME}Python_srcs})<br>
target_link_libraries(${PROJEC<wbr>T_NAME}PythonD
${PROJECT_NAME})<br>
<br>
add_library(${PROJECT_NAME}Pyt<wbr>hon
MODULE
${PROJECT_NAME}PythonInit.cxx)<br>
target_link_libraries(${PROJEC<wbr>T_NAME}Python
${PROJECT_NAME}PythonD)<br>
<br>
endif()<br>
endif()<br>
<br>
</div>
When I try to import the module
into a python script, I get an
import error about undefined
symbols like PyVTKObject_Type.
After a little research with nm
I found out that the shared
object is not linked to
libvtkWrappingPython27Core. Here
are the first lines of it:<br>
<br>
</div>
U PyBool_FromLong<br>
U PyDict_SetItemString<br>
U PyErr_Occurred<br>
U PyInt_FromLong<br>
U PyModule_GetDict<br>
U PyString_FromString<br>
0000000000003020 T
PyVTKAddFile_vtkPolyDataBoolea<wbr>nFilter<br>
U PyVTKClass_New<br>
U PyVTKClass_Type<br>
U PyVTKClass_vtkPolyDataAlgorith<wbr>mNew<br>
<br>
</div>
How to fix this? There is no
documentation about the the python
wrapper, except <a href="https://www.vtk.org/Wiki/VTK/Python_Wrapping_FAQ" target="_blank">https://www.vtk.org/Wiki/VTK/P<wbr>ython_Wrapping_FAQ</a>.<br>
<br>
</div>
I'm actually using VTK 6.3 and my
library can be found on <a href="https://github.com/zippy84/vtkbool" target="_blank">https://github.com/zippy84/vtk<wbr>bool</a>.<br>
<br>
</div>
Best regards</div>
<span class="m_-1998149975941547339m_-3134541148717504743gmail-HOEnZb"><font color="#888888">
<div>Ronald<br>
</div>
</font></span></div>
</blockquote>
</div>
<br>
</div>
</div>
</blockquote>
<p><br>
</p>
</div>
</div>
</div>
</blockquote>
</div>
<br>
</div>
</blockquote>
<p><br>
</p>
</div></div></div>
</blockquote></div><br></div>