After bumping Qt to 5.15, VTK-8.2.0 fails to compile: /usr/bin/x86_64-pc-linux-gnu-g++ -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NO_DEBUG -DQT_WIDGETS_LIB -DVTK_IN_VTK -DvtkRenderingQt_EXPORTS -IRendering/Qt -I/var/tmp/portage/sci-libs/vtk-8.2.0-r3/work/VTK-8.2.0/Rendering/Qt -ICommon/Core -I/var/tmp/portage/sci-libs/vtk-8.2.0-r3/work/VTK-8.2.0/Common/Core -IUtilities/KWIML -I/var/tmp/portage/sci-libs/vtk-8.2.0-r3/work/VTK-8.2.0/Utilities/KWIML -IUtilities/KWSys -I/var/tmp/portage/sci-libs/vtk-8.2.0-r3/work/VTK-8.2.0/Utilities/KWSys -IThirdParty/utf8 -I/var/tmp/portage/sci-libs/vtk-8.2.0-r3/work/VTK-8.2.0/ThirdParty/utf8 -ICommon/DataModel -I/var/tmp/portage/sci-libs/vtk-8.2.0-r3/work/VTK-8.2.0/Common/DataModel -ICommon/Math -I/var/tmp/portage/sci-libs/vtk-8.2.0-r3/work/VTK-8.2.0/Common/Math -ICommon/Misc -I/var/tmp/portage/sci-libs/vtk-8.2.0-r3/work/VTK-8.2.0/Common/Misc -ICommon/System -I/var/tmp/portage/sci-libs/vtk-8.2.0-r3/work/VTK-8.2.0/Common/System -ICommon/Transforms -I/var/tmp/portage/sci-libs/vtk-8.2.0-r3/work/VTK-8.2.0/Common/Transforms -ICommon/ExecutionModel -I/var/tmp/portage/sci-libs/vtk-8.2.0-r3/work/VTK-8.2.0/Common/ExecutionModel -IFilters/Sources -I/var/tmp/portage/sci-libs/vtk-8.2.0-r3/work/VTK-8.2.0/Filters/Sources -ICommon/ComputationalGeometry -I/var/tmp/portage/sci-libs/vtk-8.2.0-r3/work/VTK-8.2.0/Common/ComputationalGeometry -IFilters/Core -I/var/tmp/portage/sci-libs/vtk-8.2.0-r3/work/VTK-8.2.0/Filters/Core -IFilters/General -I/var/tmp/portage/sci-libs/vtk-8.2.0-r3/work/VTK-8.2.0/Filters/General -IFilters/Texture -I/var/tmp/portage/sci-libs/vtk-8.2.0-r3/work/VTK-8.2.0/Filters/Texture -IGUISupport/Qt -I/var/tmp/portage/sci-libs/vtk-8.2.0-r3/work/VTK-8.2.0/GUISupport/Qt -IFilters/Extraction -I/var/tmp/portage/sci-libs/vtk-8.2.0-r3/work/VTK-8.2.0/Filters/Extraction -IFilters/Statistics -I/var/tmp/portage/sci-libs/vtk-8.2.0-r3/work/VTK-8.2.0/Filters/Statistics -IImaging/Fourier -I/var/tmp/portage/sci-libs/vtk-8.2.0-r3/work/VTK-8.2.0/Imaging/Fourier -IImaging/Core -I/var/tmp/portage/sci-libs/vtk-8.2.0-r3/work/VTK-8.2.0/Imaging/Core -IThirdParty/eigen -I/var/tmp/portage/sci-libs/vtk-8.2.0-r3/work/VTK-8.2.0/ThirdParty/eigen -I/usr/include/eigen3 -IInteraction/Style -I/var/tmp/portage/sci-libs/vtk-8.2.0-r3/work/VTK-8.2.0/Interaction/Style -IRendering/Core -I/var/tmp/portage/sci-libs/vtk-8.2.0-r3/work/VTK-8.2.0/Rendering/Core -ICommon/Color -I/var/tmp/portage/sci-libs/vtk-8.2.0-r3/work/VTK-8.2.0/Common/Color -IFilters/Geometry -I/var/tmp/portage/sci-libs/vtk-8.2.0-r3/work/VTK-8.2.0/Filters/Geometry -IRendering/OpenGL2 -I/var/tmp/portage/sci-libs/vtk-8.2.0-r3/work/VTK-8.2.0/Rendering/OpenGL2 -IThirdParty/glew -I/var/tmp/portage/sci-libs/vtk-8.2.0-r3/work/VTK-8.2.0/ThirdParty/glew -IRendering/Label -I/var/tmp/portage/sci-libs/vtk-8.2.0-r3/work/VTK-8.2.0/Rendering/Label -IRendering/FreeType -I/var/tmp/portage/sci-libs/vtk-8.2.0-r3/work/VTK-8.2.0/Rendering/FreeType -IThirdParty/freetype -I/var/tmp/portage/sci-libs/vtk-8.2.0-r3/work/VTK-8.2.0/ThirdParty/freetype -I/usr/include/freetype2 -IThirdParty/zlib -I/var/tmp/portage/sci-libs/vtk-8.2.0-r3/work/VTK-8.2.0/ThirdParty/zlib -isystem /usr/include/qt5 -isystem /usr/include/qt5/QtWidgets -isystem /usr/include/qt5/QtGui -isystem /usr/include/qt5/QtCore -isystem /usr/lib64/qt5/mkspecs/linux-g++ -D__STDC_CONSTANT_MACROS -D_UNICODE -DNDEBUG -O2 -march=native -pipe -fPIC -fvisibility=hidden -fPIC -std=c++11 -MD -MT Rendering/Qt/CMakeFiles/vtkRenderingQt.dir/vtkQtLabelRenderStrategy.cxx.o -MF Rendering/Qt/CMakeFiles/vtkRenderingQt.dir/vtkQtLabelRenderStrategy.cxx.o.d -o Rendering/Qt/CMakeFiles/vtkRenderingQt.dir/vtkQtLabelRenderStrategy.cxx.o -c /var/tmp/portage/sci-libs/vtk-8.2.0-r3/work/VTK-8.2.0/Rendering/Qt/vtkQtLabelRenderStrategy.cxx In file included from Common/Core/vtkAtomic.h:28, from /var/tmp/portage/sci-libs/vtk-8.2.0-r3/work/VTK-8.2.0/Common/Core/vtkAtomicTypes.h:18, from /var/tmp/portage/sci-libs/vtk-8.2.0-r3/work/VTK-8.2.0/Common/Core/vtkObjectBase.h:54, from /var/tmp/portage/sci-libs/vtk-8.2.0-r3/work/VTK-8.2.0/Common/Core/vtkObject.h:45, from /var/tmp/portage/sci-libs/vtk-8.2.0-r3/work/VTK-8.2.0/Rendering/Label/vtkLabelRenderStrategy.h:27, from /var/tmp/portage/sci-libs/vtk-8.2.0-r3/work/VTK-8.2.0/Rendering/Qt/vtkQtLabelRenderStrategy.h:29, from /var/tmp/portage/sci-libs/vtk-8.2.0-r3/work/VTK-8.2.0/Rendering/Qt/vtkQtLabelRenderStrategy.cxx:15: /usr/include/tbb/atomic.h:21:141: note: ‘#pragma message: TBB Warning: tbb/atomic.h is deprecated. For details, please see Deprecated Features appendix in the TBB reference manual.’ 21 | #pragma message("TBB Warning: tbb/atomic.h is deprecated. For details, please see Deprecated Features appendix in the TBB reference manual.") | ^ /var/tmp/portage/sci-libs/vtk-8.2.0-r3/work/VTK-8.2.0/Rendering/Qt/vtkQtLabelRenderStrategy.cxx: In member function ‘virtual void vtkQtLabelRenderStrategy::ComputeLabelBounds(vtkTextProperty*, vtkUnicodeString, double*)’: /var/tmp/portage/sci-libs/vtk-8.2.0-r3/work/VTK-8.2.0/Rendering/Qt/vtkQtLabelRenderStrategy.cxx:229:18: error: aggregate ‘QPainterPath path’ has incomplete type and cannot be defined 229 | QPainterPath path; | ^~~~ /var/tmp/portage/sci-libs/vtk-8.2.0-r3/work/VTK-8.2.0/Rendering/Qt/vtkQtLabelRenderStrategy.cxx: In member function ‘virtual void vtkQtLabelRenderStrategy::RenderLabel(int*, vtkTextProperty*, vtkUnicodeString, int)’: /var/tmp/portage/sci-libs/vtk-8.2.0-r3/work/VTK-8.2.0/Rendering/Qt/vtkQtLabelRenderStrategy.cxx:331:16: error: aggregate ‘QPainterPath path’ has incomplete type and cannot be defined 331 | QPainterPath path; | ^~~~ /var/tmp/portage/sci-libs/vtk-8.2.0-r3/work/VTK-8.2.0/Rendering/Qt/vtkQtLabelRenderStrategy.cxx: In member function ‘virtual void vtkQtLabelRenderStrategy::RenderLabel(int*, vtkTextProperty*, vtkUnicodeString)’: /var/tmp/portage/sci-libs/vtk-8.2.0-r3/work/VTK-8.2.0/Rendering/Qt/vtkQtLabelRenderStrategy.cxx:442:18: error: aggregate ‘QPainterPath path’ has incomplete type and cannot be defined 442 | QPainterPath path; | ^~~~ Reproducible: Always
Apart from vtkQtLabelRenderStrategy.cxx, the same goes for vtkQtStringToImage.cxx: /usr/bin/x86_64-pc-linux-gnu-g++ -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NO_DEBUG -DQT_WIDGETS_LIB -DVTK_IN_VTK -DvtkRenderingQt_EXPORTS -IRendering/Qt -I/var/tmp/portage/sci-libs/vtk-8.2.0-r3/work/VTK-8.2.0/Rendering/Qt -ICommon/Core -I/var/tmp/portage/sci-libs/vtk-8.2.0-r3/work/VTK-8.2.0/Common/Core -IUtilities/KWIML -I/var/tmp/portage/sci-libs/vtk-8.2.0-r3/work/VTK-8.2.0/Utilities/KWIML -IUtilities/KWSys -I/var/tmp/portage/sci-libs/vtk-8.2.0-r3/work/VTK-8.2.0/Utilities/KWSys -IThirdParty/utf8 -I/var/tmp/portage/sci-libs/vtk-8.2.0-r3/work/VTK-8.2.0/ThirdParty/utf8 -ICommon/DataModel -I/var/tmp/portage/sci-libs/vtk-8.2.0-r3/work/VTK-8.2.0/Common/DataModel -ICommon/Math -I/var/tmp/portage/sci-libs/vtk-8.2.0-r3/work/VTK-8.2.0/Common/Math -ICommon/Misc -I/var/tmp/portage/sci-libs/vtk-8.2.0-r3/work/VTK-8.2.0/Common/Misc -ICommon/System -I/var/tmp/portage/sci-libs/vtk-8.2.0-r3/work/VTK-8.2.0/Common/System -ICommon/Transforms -I/var/tmp/portage/sci-libs/vtk-8.2.0-r3/work/VTK-8.2.0/Common/Transforms -ICommon/ExecutionModel -I/var/tmp/portage/sci-libs/vtk-8.2.0-r3/work/VTK-8.2.0/Common/ExecutionModel -IFilters/Sources -I/var/tmp/portage/sci-libs/vtk-8.2.0-r3/work/VTK-8.2.0/Filters/Sources -ICommon/ComputationalGeometry -I/var/tmp/portage/sci-libs/vtk-8.2.0-r3/work/VTK-8.2.0/Common/ComputationalGeometry -IFilters/Core -I/var/tmp/portage/sci-libs/vtk-8.2.0-r3/work/VTK-8.2.0/Filters/Core -IFilters/General -I/var/tmp/portage/sci-libs/vtk-8.2.0-r3/work/VTK-8.2.0/Filters/General -IFilters/Texture -I/var/tmp/portage/sci-libs/vtk-8.2.0-r3/work/VTK-8.2.0/Filters/Texture -IGUISupport/Qt -I/var/tmp/portage/sci-libs/vtk-8.2.0-r3/work/VTK-8.2.0/GUISupport/Qt -IFilters/Extraction -I/var/tmp/portage/sci-libs/vtk-8.2.0-r3/work/VTK-8.2.0/Filters/Extraction -IFilters/Statistics -I/var/tmp/portage/sci-libs/vtk-8.2.0-r3/work/VTK-8.2.0/Filters/Statistics -IImaging/Fourier -I/var/tmp/portage/sci-libs/vtk-8.2.0-r3/work/VTK-8.2.0/Imaging/Fourier -IImaging/Core -I/var/tmp/portage/sci-libs/vtk-8.2.0-r3/work/VTK-8.2.0/Imaging/Core -IThirdParty/eigen -I/var/tmp/portage/sci-libs/vtk-8.2.0-r3/work/VTK-8.2.0/ThirdParty/eigen -I/usr/include/eigen3 -IInteraction/Style -I/var/tmp/portage/sci-libs/vtk-8.2.0-r3/work/VTK-8.2.0/Interaction/Style -IRendering/Core -I/var/tmp/portage/sci-libs/vtk-8.2.0-r3/work/VTK-8.2.0/Rendering/Core -ICommon/Color -I/var/tmp/portage/sci-libs/vtk-8.2.0-r3/work/VTK-8.2.0/Common/Color -IFilters/Geometry -I/var/tmp/portage/sci-libs/vtk-8.2.0-r3/work/VTK-8.2.0/Filters/Geometry -IRendering/OpenGL2 -I/var/tmp/portage/sci-libs/vtk-8.2.0-r3/work/VTK-8.2.0/Rendering/OpenGL2 -IThirdParty/glew -I/var/tmp/portage/sci-libs/vtk-8.2.0-r3/work/VTK-8.2.0/ThirdParty/glew -IRendering/Label -I/var/tmp/portage/sci-libs/vtk-8.2.0-r3/work/VTK-8.2.0/Rendering/Label -IRendering/FreeType -I/var/tmp/portage/sci-libs/vtk-8.2.0-r3/work/VTK-8.2.0/Rendering/FreeType -IThirdParty/freetype -I/var/tmp/portage/sci-libs/vtk-8.2.0-r3/work/VTK-8.2.0/ThirdParty/freetype -I/usr/include/freetype2 -IThirdParty/zlib -I/var/tmp/portage/sci-libs/vtk-8.2.0-r3/work/VTK-8.2.0/ThirdParty/zlib -isystem /usr/include/qt5 -isystem /usr/include/qt5/QtWidgets -isystem /usr/include/qt5/QtGui -isystem /usr/include/qt5/QtCore -isystem /usr/lib64/qt5/mkspecs/linux-g++ -D__STDC_CONSTANT_MACROS -D_UNICODE -DNDEBUG -O2 -march=native -pipe -fPIC -fvisibility=hidden -fPIC -std=c++11 -MD -MT Rendering/Qt/CMakeFiles/vtkRenderingQt.dir/vtkQtStringToImage.cxx.o -MF Rendering/Qt/CMakeFiles/vtkRenderingQt.dir/vtkQtStringToImage.cxx.o.d -o Rendering/Qt/CMakeFiles/vtkRenderingQt.dir/vtkQtStringToImage.cxx.o -c /var/tmp/portage/sci-libs/vtk-8.2.0-r3/work/VTK-8.2.0/Rendering/Qt/vtkQtStringToImage.cxx In file included from Common/Core/vtkAtomic.h:28, from /var/tmp/portage/sci-libs/vtk-8.2.0-r3/work/VTK-8.2.0/Common/Core/vtkAtomicTypes.h:18, from /var/tmp/portage/sci-libs/vtk-8.2.0-r3/work/VTK-8.2.0/Common/Core/vtkObjectBase.h:54, from /var/tmp/portage/sci-libs/vtk-8.2.0-r3/work/VTK-8.2.0/Common/Core/vtkObject.h:45, from /var/tmp/portage/sci-libs/vtk-8.2.0-r3/work/VTK-8.2.0/Rendering/Core/vtkStringToImage.h:29, from /var/tmp/portage/sci-libs/vtk-8.2.0-r3/work/VTK-8.2.0/Rendering/Qt/vtkQtStringToImage.h:28, from /var/tmp/portage/sci-libs/vtk-8.2.0-r3/work/VTK-8.2.0/Rendering/Qt/vtkQtStringToImage.cxx:16: /usr/include/tbb/atomic.h:21:141: note: ‘#pragma message: TBB Warning: tbb/atomic.h is deprecated. For details, please see Deprecated Features appendix in the TBB reference manual.’ 21 | #pragma message("TBB Warning: tbb/atomic.h is deprecated. For details, please see Deprecated Features appendix in the TBB reference manual.") | ^ /var/tmp/portage/sci-libs/vtk-8.2.0-r3/work/VTK-8.2.0/Rendering/Qt/vtkQtStringToImage.cxx: In member function ‘virtual vtkVector2i vtkQtStringToImage::GetBounds(vtkTextProperty*, const vtkUnicodeString&, int)’: /var/tmp/portage/sci-libs/vtk-8.2.0-r3/work/VTK-8.2.0/Rendering/Qt/vtkQtStringToImage.cxx:109:16: error: aggregate ‘QPainterPath path’ has incomplete type and cannot be defined 109 | QPainterPath path; | ^~~~ /var/tmp/portage/sci-libs/vtk-8.2.0-r3/work/VTK-8.2.0/Rendering/Qt/vtkQtStringToImage.cxx: In member function ‘virtual vtkVector2i vtkQtStringToImage::GetBounds(vtkTextProperty*, const vtkStdString&, int)’: /var/tmp/portage/sci-libs/vtk-8.2.0-r3/work/VTK-8.2.0/Rendering/Qt/vtkQtStringToImage.cxx:140:16: error: aggregate ‘QPainterPath path’ has incomplete type and cannot be defined 140 | QPainterPath path; | ^~~~ /var/tmp/portage/sci-libs/vtk-8.2.0-r3/work/VTK-8.2.0/Rendering/Qt/vtkQtStringToImage.cxx: In member function ‘virtual int vtkQtStringToImage::RenderString(vtkTextProperty*, const vtkUnicodeString&, int, vtkImageData*, int*)’: /var/tmp/portage/sci-libs/vtk-8.2.0-r3/work/VTK-8.2.0/Rendering/Qt/vtkQtStringToImage.cxx:187:16: error: aggregate ‘QPainterPath path’ has incomplete type and cannot be defined 187 | QPainterPath path; | ^~~~
Created attachment 643296 [details, diff] VTK-8.2.0-Qt-5.15-compat.patch Proposed patch adds the missing include for the two involved source files: #include <QPainterPath> Idea taken from: https://github.com/alex47/BreezeBlurred/pull/23/commits/ef5cb1181507c63c6bdd00a5f32eeefbb6eef68b
*** Bug 726676 has been marked as a duplicate of this bug. ***
There's also an upstream commit: https://gitlab.kitware.com/vtk/vtk/-/commit/797f28697d5ba50c1fa2bc5596af626a3c277826
The bug has been closed via the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3ca9613d7ad604c93d714e29b116952561e4e41c commit 3ca9613d7ad604c93d714e29b116952561e4e41c Author: Andreas Sturmlechner <asturm@gentoo.org> AuthorDate: 2020-06-06 08:41:08 +0000 Commit: Andreas Sturmlechner <asturm@gentoo.org> CommitDate: 2020-06-06 09:41:50 +0000 sci-libs/vtk: Fix build with Qt 5.15 Closes: https://bugs.gentoo.org/726960 Package-Manager: Portage-2.3.100, Repoman-2.3.22 Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org> sci-libs/vtk/files/vtk-8.2.0-qt-5.15.patch | 37 ++++++++++++++++++++++++++++++ sci-libs/vtk/vtk-8.2.0.ebuild | 1 + 2 files changed, 38 insertions(+)