Bug 1840957 - FreeCAD fails to build with VTK 9.0
Summary: FreeCAD fails to build with VTK 9.0
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: freecad
Version: 34
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Richard Shaw
QA Contact: Fedora Extras Quality Assurance
URL: https://forum.freecadweb.org/viewtopi...
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2020-05-28 01:46 UTC by Orion Poplawski
Modified: 2021-05-14 21:11 UTC (History)
3 users (show)

Fixed In Version: freecad-0.19.2-1.fc34 freecad-0.19.2-1.fc33
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2021-05-10 01:05:36 UTC
Type: Bug


Attachments (Terms of Use)

Description Orion Poplawski 2020-05-28 01:46:48 UTC
Description of problem:

I'm testing builds with VTK 9.0 here:
https://copr.fedorainfracloud.org/coprs/orion/vtk9.0/builds/

freecad fails to build with:

[  0%] Building CXX object src/3rdParty/salomesmesh/CMakeFiles/Driver.dir/src/Driver/Driver_Mesh.cpp.o
cd /builddir/build/BUILD/FreeCAD-0.18.4/build/src/3rdParty/salomesmesh && /usr/bin/c++  -DCSFDB -DDriver_EXPORTS -DHAVE_CONFIG_H -DHAVE_LIMITS_H -DLIN -DOCC_CONVERT_SIGNALS -D_OCC64 -I/builddir/build/BUILD/FreeCAD-0.18.4/build -I/builddir/build/BUILD/FreeCAD-0.18.4/build/src -I/builddir/build/BUILD/FreeCAD-0.18.4/src -I/builddir/build/BUILD/FreeCAD-0.18.4/src/3rdParty/salomesmesh/src/SMDS -I/builddir/build/BUILD/FreeCAD-0.18.4/src/3rdParty/salomesmesh/src/Driver -I/builddir/build/BUILD/FreeCAD-0.18.4/src/3rdParty/salomesmesh/src/DriverUNV -I/builddir/build/BUILD/FreeCAD-0.18.4/src/3rdParty/salomesmesh/src/DriverDAT -I/builddir/build/BUILD/FreeCAD-0.18.4/src/3rdParty/salomesmesh/src/DriverSTL -I/builddir/build/BUILD/FreeCAD-0.18.4/src/3rdParty/salomesmesh/src/StdMeshers -I/builddir/build/BUILD/FreeCAD-0.18.4/src/3rdParty/salomesmesh/inc -I/builddir/build/BUILD/FreeCAD-0.18.4/build/src/3rdParty/salomesmesh -I/usr/include/opencascade -I/usr/include/med  -Wall -Wextra -Wno-write-strings -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -std=c++11 -D_OCC64 -Wno-sign-compare -Wno-reorder -Wno-switch -Wno-unused-variable -Wno-unused-but-set-variable -Wno-comment -Wno-unused-parameter -fPIC   -o CMakeFiles/Driver.dir/src/Driver/Driver_Mesh.cpp.o -c /builddir/build/BUILD/FreeCAD-0.18.4/src/3rdParty/salomesmesh/src/Driver/Driver_Mesh.cpp
In file included from /builddir/build/BUILD/FreeCAD-0.18.4/src/3rdParty/salomesmesh/inc/SMDS_VtkVolume.hxx:26,
                 from /builddir/build/BUILD/FreeCAD-0.18.4/src/3rdParty/salomesmesh/inc/SMDS_Mesh.hxx:45,
                 from /builddir/build/BUILD/FreeCAD-0.18.4/src/3rdParty/salomesmesh/src/SMDS/SMDS_BallElement.cpp:28:
/builddir/build/BUILD/FreeCAD-0.18.4/src/3rdParty/salomesmesh/inc/SMDS_UnstructuredGrid.hxx: In member function 'vtkCellLinks* SMDS_UnstructuredGrid::GetLinks()':
/builddir/build/BUILD/FreeCAD-0.18.4/src/3rdParty/salomesmesh/inc/SMDS_UnstructuredGrid.hxx:98:12: error: invalid user-defined conversion from 'vtkSmartPointer<vtkAbstractCellLinks>' to 'vtkCellLinks*' [-fpermissive]
   98 |     return Links;
      |            ^~~~~
In file included from /usr/include/vtk/vtkGenericDataArray.h:73,
                 from /usr/include/vtk/vtkAOSDataArrayTemplate.h:36,
                 from /usr/include/vtk/vtkCellArray.h:141,
                 from /usr/include/vtk/vtkUnstructuredGrid.h:31,
                 from /builddir/build/BUILD/FreeCAD-0.18.4/src/3rdParty/salomesmesh/inc/SMDS_VtkEdge.hxx:30,
                 from /builddir/build/BUILD/FreeCAD-0.18.4/src/3rdParty/salomesmesh/inc/SMDS_Mesh.hxx:43,
                 from /builddir/build/BUILD/FreeCAD-0.18.4/src/3rdParty/salomesmesh/src/SMDS/SMDS_BallElement.cpp:28:
/usr/include/vtk/vtkSmartPointer.h:188:3: note: candidate is: 'vtkSmartPointer<ArrayType>::operator T*() const [with T = vtkAbstractCellLinks]' (near match)
  188 |   operator T*() const noexcept { return static_cast<T*>(this->Object); }
      |   ^~~~~~~~
/usr/include/vtk/vtkSmartPointer.h:188:3: note:   no known conversion from 'vtkAbstractCellLinks*' to 'vtkCellLinks*'
/builddir/build/BUILD/FreeCAD-0.18.4/src/3rdParty/salomesmesh/src/SMDS/SMDS_BallElement.cpp: In member function 'bool SMDS_BallElement::ChangeNode(const SMDS_MeshNode*)':
/builddir/build/BUILD/FreeCAD-0.18.4/src/3rdParty/salomesmesh/src/SMDS/SMDS_BallElement.cpp:72:38: error: binding reference of type 'const vtkIdType*&' {aka 'const long long int*&'} to 'vtkIdType*' {aka 'long long int*'} discards qualifiers
   72 |   grid->GetCellPoints(myVtkID, npts, pts);
      |                                      ^~~
In file included from /builddir/build/BUILD/FreeCAD-0.18.4/src/3rdParty/salomesmesh/inc/SMDS_VtkEdge.hxx:30,
                 from /builddir/build/BUILD/FreeCAD-0.18.4/src/3rdParty/salomesmesh/inc/SMDS_Mesh.hxx:43,
                 from /builddir/build/BUILD/FreeCAD-0.18.4/src/3rdParty/salomesmesh/src/SMDS/SMDS_BallElement.cpp:28:
/usr/include/vtk/vtkUnstructuredGrid.h:196:75: note:   initializing argument 3 of 'void vtkUnstructuredGrid::GetCellPoints(vtkIdType, vtkIdType&, const vtkIdType*&)'
  196 |   void GetCellPoints(vtkIdType cellId, vtkIdType& npts, vtkIdType const*& pts)
      |                                                         ~~~~~~~~~~~~~~~~~~^~~
/builddir/build/BUILD/FreeCAD-0.18.4/src/3rdParty/salomesmesh/src/SMDS/SMDS_BallElement.cpp: In member function 'virtual const SMDS_MeshNode* SMDS_BallElement::GetNode(int) const':
/builddir/build/BUILD/FreeCAD-0.18.4/src/3rdParty/salomesmesh/src/SMDS/SMDS_BallElement.cpp:87:39: error: binding reference of type 'const vtkIdType*&' {aka 'const long long int*&'} to 'vtkIdType*' {aka 'long long int*'} discards qualifiers
   87 |   grid->GetCellPoints( myVtkID, npts, pts );
      |                                       ^~~
In file included from /builddir/build/BUILD/FreeCAD-0.18.4/src/3rdParty/salomesmesh/inc/SMDS_VtkEdge.hxx:30,
                 from /builddir/build/BUILD/FreeCAD-0.18.4/src/3rdParty/salomesmesh/inc/SMDS_Mesh.hxx:43,
                 from /builddir/build/BUILD/FreeCAD-0.18.4/src/3rdParty/salomesmesh/src/SMDS/SMDS_BallElement.cpp:28:
/usr/include/vtk/vtkUnstructuredGrid.h:196:75: note:   initializing argument 3 of 'void vtkUnstructuredGrid::GetCellPoints(vtkIdType, vtkIdType&, const vtkIdType*&)'
  196 |   void GetCellPoints(vtkIdType cellId, vtkIdType& npts, vtkIdType const*& pts)
      |                                                         ~~~~~~~~~~~~~~~~~~^~~
make[2]: *** [src/3rdParty/salomesmesh/CMakeFiles/SMDS.dir/build.make:86: src/3rdParty/salomesmesh/CMakeFiles/SMDS.dir/src/SMDS/SMDS_BallElement.cpp.o] Error 1

Version-Release number of selected component (if applicable):
freecad-0.18.4-7

Comment 1 Ben Cotton 2020-08-11 13:34:35 UTC
This bug appears to have been reported against 'rawhide' during the Fedora 33 development cycle.
Changing version to 33.

Comment 2 Orion Poplawski 2021-01-31 17:02:39 UTC
Still failing:

[ 27%] Copying /builddir/build/BUILD/FreeCAD-4db83a41ca5800a0238a3030c81e33950c3070a3/src/Mod/Draft/draftguitools/gui_polygons.py to /builddir/build/BUILD/FreeCAD-4db83a41ca5800a0238a3030c81e33950c3070a3/x86_64-redhat-linux-gnu/Mod/Draft/draftguitools/gui_polygons.py
cd /builddir/build/BUILD/FreeCAD-4db83a41ca5800a0238a3030c81e33950c3070a3/x86_64-redhat-linux-gnu/src/Mod/Draft && /usr/bin/cmake -E copy /builddir/build/BUILD/FreeCAD-4db83a41ca5800a0238a3030c81e33950c3070a3/src/Mod/Draft/draftguitools/gui_polygons.py /builddir/build/BUILD/FreeCAD-4db83a41ca5800a0238a3030c81e33950c3070a3/x86_64-redhat-linux-gnu/Mod/Draft/draftguitools/gui_polygons.py
In file included from /builddir/build/BUILD/FreeCAD-4db83a41ca5800a0238a3030c81e33950c3070a3/src/3rdParty/salomesmesh/inc/SMDS_Downward.hxx:27,
                 from /builddir/build/BUILD/FreeCAD-4db83a41ca5800a0238a3030c81e33950c3070a3/src/3rdParty/salomesmesh/src/SMDS/SMDS_Downward.cpp:24:
/builddir/build/BUILD/FreeCAD-4db83a41ca5800a0238a3030c81e33950c3070a3/src/3rdParty/salomesmesh/inc/SMDS_UnstructuredGrid.hxx: In member function 'vtkCellLinks* SMDS_UnstructuredGrid::GetLinks()':
/builddir/build/BUILD/FreeCAD-4db83a41ca5800a0238a3030c81e33950c3070a3/src/3rdParty/salomesmesh/inc/SMDS_UnstructuredGrid.hxx:98:12: error: invalid user-defined conversion from 'vtkSmartPointer<vtkAbstractCellLinks>' to 'vtkCellLinks*' [-fpermissive]
   98 |     return Links;
      |            ^~~~~
In file included from /usr/include/vtk/vtkGenericDataArray.h:73,
                 from /usr/include/vtk/vtkAOSDataArrayTemplate.h:36,
                 from /usr/include/vtk/vtkCellArray.h:141,
                 from /usr/include/vtk/vtkUnstructuredGrid.h:31,
                 from /builddir/build/BUILD/FreeCAD-4db83a41ca5800a0238a3030c81e33950c3070a3/src/3rdParty/salomesmesh/inc/SMDS_UnstructuredGrid.hxx:29,
                 from /builddir/build/BUILD/FreeCAD-4db83a41ca5800a0238a3030c81e33950c3070a3/src/3rdParty/salomesmesh/inc/SMDS_Downward.hxx:27,
                 from /builddir/build/BUILD/FreeCAD-4db83a41ca5800a0238a3030c81e33950c3070a3/src/3rdParty/salomesmesh/src/SMDS/SMDS_Downward.cpp:24:
/usr/include/vtk/vtkSmartPointer.h:188:3: note: candidate is: 'vtkSmartPointer<ArrayType>::operator T*() const [with T = vtkAbstractCellLinks]' (near match)
  188 |   operator T*() const noexcept { return static_cast<T*>(this->Object); }
      |   ^~~~~~~~
/usr/include/vtk/vtkSmartPointer.h:188:3: note:   no known conversion from 'vtkAbstractCellLinks*' to 'vtkCellLinks*'


https://koji.fedoraproject.org/koji/taskinfo?taskID=60976057

Comment 3 Ben Cotton 2021-02-09 15:15:09 UTC
This bug appears to have been reported against 'rawhide' during the Fedora 34 development cycle.
Changing version to 34.

Comment 4 Fedora Update System 2021-05-05 21:29:18 UTC
FEDORA-2021-7639ce16f6 has been submitted as an update to Fedora 33. https://bodhi.fedoraproject.org/updates/FEDORA-2021-7639ce16f6

Comment 5 Fedora Update System 2021-05-06 01:34:10 UTC
FEDORA-2021-7639ce16f6 has been pushed to the Fedora 33 testing repository.
Soon you'll be able to install the update with the following command:
`sudo dnf upgrade --enablerepo=updates-testing --advisory=FEDORA-2021-7639ce16f6`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2021-7639ce16f6

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 6 Fedora Update System 2021-05-06 01:58:30 UTC
FEDORA-2021-e69bf4bd76 has been pushed to the Fedora 34 testing repository.
Soon you'll be able to install the update with the following command:
`sudo dnf upgrade --enablerepo=updates-testing --advisory=FEDORA-2021-e69bf4bd76`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2021-e69bf4bd76

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 7 Fedora Update System 2021-05-10 01:05:36 UTC
FEDORA-2021-e69bf4bd76 has been pushed to the Fedora 34 stable repository.
If problem still persists, please make note of it in this bug report.

Comment 8 Fedora Update System 2021-05-14 21:11:45 UTC
FEDORA-2021-7639ce16f6 has been pushed to the Fedora 33 stable repository.
If problem still persists, please make note of it in this bug report.


Note You need to log in before you can comment on or make changes to this bug.