Opened 6 months ago

Last modified 6 months ago

#60381 assigned defect

vtk @8.2.0_0 +python38 +qt5 +openmpi: failure to build

Reported by: majoc-at-astro (majoc-at-astro) Owned by: stromnov (Andrew Stromnov)
Priority: Normal Milestone:
Component: ports Version: 2.6.2
Keywords: Cc: rubendibattista (Ruben Di Battista)
Port: vtk


We're finding vtk @8.2.0_0 +python38 +qt5 +openmpi fails to build from source, for macOS versions 10.13--10.15. Logfile enclosed, but here's what looks like the punchline:

macports.org_macports_release_tarballs_ports_graphics_vtk/vtk/work/VTK-8.2.0/Wrapping/PythonCore/PyVTKMethodDescriptor.cxx:189:3: error: cannot initialize a member subobject of type 'Py_ssize_t' (aka 'long') with an rvalue of type 'nullptr_t'

.... plus an exactly similar type-conflict error lower down for PyVTKReference.cxx in the same directory. This may or may not be related to 60367, qv.

For completeness, the system info for the 10.14 build is:

MacPorts Version: 2.6.2

macOS 10.14.6

  • Build: 18G2022

Xcode 10.3

  • Xcode: Build version 10G8
  • clang: Apple LLVM version 10.0.1 (clang-1001.0.46.4)

Hope this helps. Do please let me know if there's further information you need. Thanks in advance.

Attachments (2)

vtk.log.2020-04-20_10.23.37.gz (69.1 KB) - added by majoc-at-astro (majoc-at-astro) 6 months ago.
patch-python38-compat.diff (8.2 KB) - added by rubendibattista (Ruben Di Battista) 6 months ago.
Patch for Python38 compatibility

Download all attachments as: .zip

Change History (7)

Changed 6 months ago by majoc-at-astro (majoc-at-astro)

comment:1 Changed 6 months ago by rubendibattista (Ruben Di Battista)

Cc: rubendibattista added

comment:2 Changed 6 months ago by rubendibattista (Ruben Di Battista)

It looks like a problem with python38. I can confirm it does not build with the same error if using python38.

I'll try to see if I can fix it.

comment:3 Changed 6 months ago by rubendibattista (Ruben Di Battista)

comment:4 Changed 6 months ago by mf2k (Frank Schima)

Cc: stromnov removed
Owner: set to stromnov
Status: newassigned

comment:5 Changed 6 months ago by rubendibattista (Ruben Di Battista)

I applied the patch in the reported issue... But now I'm getting all these strange linking problems:

CommandLineTools/SDKs/MacOSX10.15.sdk  -arch x86_64 -isysroot /Library/Developer/CommandLineTools/SDKs/MacOSX10.15.sdk -mmacosx-version-min=10.15 -fPIC   -std=c++11 -o CMakeFiles/vtkCommonCorePythonD.dir/vtkTypeInt8ArrayPython.cxx.o -c /o
:info:build ld: file not found: @rpath/libvtkCommonSystem-8.2.1.dylib for architecture x86_64

That I can fix, applying patches all over the place, adding the right vtk_module_link_libraries shenanigans, but this looks wrong to me...

I don't get why using pythn38 should change the linking stuff...

Last edited 6 months ago by rubendibattista (Ruben Di Battista) (previous) (diff)

Changed 6 months ago by rubendibattista (Ruben Di Battista)

Attachment: patch-python38-compat.diff added

Patch for Python38 compatibility

Note: See TracTickets for help on using tickets.