Opened 5 years ago
Closed 4 years ago
#60381 closed defect (fixed)
vtk @8.2.0_0 +python38 +qt5 +openmpi: failure to build
Reported by: | majoc-at-astro (majoc-at-astro) | Owned by: | stromnov (Andrey Stromnov) |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | 2.6.2 |
Keywords: | Cc: | rubendibattista (Ruben Di Battista), mascguy (Christopher Nielsen) | |
Port: | vtk |
Description
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)
Change History (14)
Changed 5 years ago by majoc-at-astro (majoc-at-astro)
Attachment: | vtk.log.2020-04-20_10.23.37.gz added |
---|
comment:1 Changed 5 years ago by rubendibattista (Ruben Di Battista)
Cc: | rubendibattista added |
---|
comment:2 Changed 5 years ago by rubendibattista (Ruben Di Battista)
comment:3 Changed 5 years ago by rubendibattista (Ruben Di Battista)
https://gitlab.kitware.com/vtk/vtk/-/issues/17670
This is related.
comment:4 Changed 5 years ago by mf2k (Frank Schima)
Cc: | stromnov removed |
---|---|
Owner: | set to stromnov |
Status: | new → assigned |
comment:5 Changed 5 years 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 pt/local/var/macports/build/_Users_rubendibattista_git_macports-ports_graphics_vtk/vtk/work/build/Wrapping/Python/vtkTypeInt8ArrayPython.cxx :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...
Changed 5 years ago by rubendibattista (Ruben Di Battista)
Attachment: | patch-python38-compat.diff added |
---|
Patch for Python38 compatibility
comment:6 Changed 4 years ago by mascguy (Christopher Nielsen)
Cc: | mascguy added |
---|
comment:7 Changed 4 years ago by mascguy (Christopher Nielsen)
I'm seeing this same error for Python 3.9, so perhaps this is something we might want to patch for all Python 3.x variants?
Regardless, this patch can be included with the fix for VTK issue:61840. Thoughts?
comment:8 Changed 4 years ago by mascguy (Christopher Nielsen)
After looking at the vtk
portfile, it looks like the patch is already in place for Python 3.8.
I'll test building against Python 3.9 with the patch, along with Python 3.7 without (to see if needed there too).
comment:9 Changed 4 years ago by mascguy (Christopher Nielsen)
The patch fixed the Python 3.9 build, so I'll update the port to patch that variant too.
comment:10 Changed 4 years ago by mascguy (Christopher Nielsen)
Update from Ruben, via list macports-dev
:
Yeah, I probably forgot to put the ticket link in order to close it after applying the patch. If I remember correctly, it was building with Python 3.7. Probably the patch is needed with 3.8+.
Thank you sir!
comment:11 Changed 4 years ago by rubendibattista (Ruben Di Battista)
https://github.com/macports/macports-ports/pull/9502
I should have generalized the patch for Python 3.8+.
It also includes: https://trac.macports.org/ticket/61840
comment:12 Changed 4 years ago by rubendibattista (Ruben Di Battista)
Resolution: | → fixed |
---|---|
Status: | assigned → closed |
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.