[vtk-developers] vtk-8.2.0-rc2 problem building wheels

Sreekanth Arikatla sreekanth.arikatla at kitware.com
Tue Nov 27 15:59:40 EST 2018


On Tue, Nov 27, 2018 at 3:01 PM Prabhu Ramachandran <prabhu at aero.iitb.ac.in>

> Hi all,
> Here is hopefully the last of the issues I am running into, I just tried
> to create wheels for 8.2.0-rc2 and have the following problem.
> First for some background.  Some of the VTK Python libraries seem to link
> to the PYTHON_LIBRARY, for the wheels, we do not do this.  JC pointed this
> out to me https://www.python.org/dev/peps/pep-0513/#libpythonx-y-so-1
> Basically, if we build wheels linking to the libpython* the wheel may not
> work on Ubuntu/Debian which would be sad.
> In the past what we did to build the wheels is provide a dummy
> VTKPythonPackage/scripts/internal/libpython-not-needed-symbols-exported-by-interpreter
> and passing that.  This somehow worked by tricking CMake into thinking
> there was a library specified but I am not sure how the linker did not
> complain.  Anyway, when I try to build the wheels now on MacOS I get this
> error:
> Linking CXX shared library...ib/libvtkPythonInterpreter-8.2.1.dylib
> FAILED: lib/libvtkPythonInterpreter-8.2.1.dylib
> : && /Library/Developer/CommandLineTools/usr/bin/c++ -O3 -DNDEBUG -arch
> x86_64 -isysroot /Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk
> -mmacosx-version-min=10.9 -dynamiclib -Wl,-headerpad_max_install_names
> -undefined dynamic_lookup  -compatibility_version 1.0.0 -current_version
> 1.0.0 -o lib/libvtkPythonInterpreter-8.2.1.dylib -install_name
> @rpath/libvtkPythonInterpreter-8.2.1.dylib
> Utilities/PythonInterpreter/CMakeFiles/vtkPythonInterpreter.dir/vtkPythonInterpreter.cxx.o
> Utilities/PythonInterpreter/CMakeFiles/vtkPythonInterpreter.dir/vtkPythonInteractiveInterpreter.cxx.o
> -Wl,-rpath,VTKPythonPackage/VTK-osx_3.7/lib
> VTKPythonPackage/scripts/internal/libpython-not-needed-symbols-exported-by-interpreter
> lib/libvtksys-8.2.1.dylib lib/libvtkCommon-8.2.1.dylib && :
> ld: file too small (length=0) file
> 'VTKPythonPackage/scripts/internal/libpython-not-needed-symbols-exported-by-interpreter'
> for architecture x86_64
> clang: error: linker command failed with exit code 1 (use -v to see
> invocation)
> Right now, I am able to build wheels only by leaving the PYTHON_LIBRARY
> entry blank.  This means that the libvtkPythonInterpreter-8.2.1.dylib does
> indeed link to the libpythonx.y.dylib.
> However, I do notice that the other libvtk*Python*8.2.1.dylib do not link
> to libpython.  So libvtkPythonInterpreter is the only one linking to
> libpython. So I think maybe if a user never uses the
> libvtkPythonInterpreter or if that is never explicitly imported or linked
> to in any Python code, we may be fine with these wheels.  Also I see that
> none of the Python extension modules, i.e. all the vtk*Python.so do not
> link to libpython or to libvtkPythonInterpreter.
> Should I just ignore the libvtkPythonInterpreter and leave the
> PYTHON_LIBRARY field blank?
> I would appreciate your thoughts on this matter. Thanks!
> cheers,
> Prabhu
> _______________________________________________
> Powered by www.kitware.com
> Visit other Kitware open-source projects at
> http://www.kitware.com/opensource/opensource.html
> Search the list archives at: http://markmail.org/search/?q=vtk-developers
> Follow this link to subscribe/unsubscribe:
> https://public.kitware.com/mailman/listinfo/vtk-developers

Sreekanth Arikatla, Ph.D.,
Senior R&D Engineer,
Kitware, Inc. <http://www.kitware.com>, Carrboro, NC.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://public.kitware.com/pipermail/vtk-developers/attachments/20181127/618c145d/attachment.html>

More information about the vtk-developers mailing list