Bug 2338609 - meshlab fails to build with GCC 15 (-Wtemplate-body)
Summary: meshlab fails to build with GCC 15 (-Wtemplate-body)
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: meshlab
Version: 42
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Eric Smith
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks: F42FTBFS gcc-15-mass-prebuild
TreeView+ depends on / blocked
 
Reported: 2025-01-17 14:10 UTC by Siddhesh Poyarekar
Modified: 2025-04-01 16:08 UTC (History)
4 users (show)

Fixed In Version: meshlab-2023.12-11.fc42
Clone Of:
Environment:
Last Closed: 2025-04-01 16:08:50 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)

Description Siddhesh Poyarekar 2025-01-17 14:10:05 UTC
This bug was initially created as a copy of Bug #2336713

A meshlab build throws the following errors when built with gcc15:

In file included from /builddir/build/BUILD/meshlab-2023.12-build/meshlab-MeshLab-2023.12/src/vcglib/wrap/io_trimesh/import.h:68,
                 from /builddir/build/BUILD/meshlab-2023.12-build/meshlab-MeshLab-2023.12/src/external/downloads/nexus-master/src/nxsbuild/vcgloader.h:5,
                 from /builddir/build/BUILD/meshlab-2023.12-build/meshlab-MeshLab-2023.12/src/external/downloads/nexus-master/src/nxsbuild/meshstream.cpp:28:
/builddir/build/BUILD/meshlab-2023.12-build/meshlab-MeshLab-2023.12/src/vcglib/wrap/io_trimesh/import_ply.h: In member function ‘int vcg::tri::io::ImporterPLY<OpenMeshType>::LoadCamera(const char*)’:
/builddir/build/BUILD/meshlab-2023.12-build/meshlab-MeshLab-2023.12/src/vcglib/wrap/io_trimesh/import_ply.h:1092:31: error: ‘class vcg::tri::io::ImporterPLY<OpenMeshType>’ has no member named ‘pi’ [-Wtemplate-body]
 1092 |                         this->pi.status = pf.GetError();
      |                               ^~
/builddir/build/BUILD/meshlab-2023.12-build/meshlab-MeshLab-2023.12/src/vcglib/wrap/io_trimesh/import_ply.h:1093:38: error: ‘class vcg::tri::io::ImporterPLY<OpenMeshType>’ has no member named ‘pi’ [-Wtemplate-body]
 1093 |                         return this->pi.status;
      |                                      ^~
/builddir/build/BUILD/meshlab-2023.12-build/meshlab-MeshLab-2023.12/src/vcglib/wrap/io_trimesh/import_ply.h:1108:38: error: ‘class vcg::tri::io::ImporterPLY<OpenMeshType>’ has no member named ‘pi’ [-Wtemplate-body]
 1108 |                         return this->pi.status;
      |                                      ^~
/builddir/build/BUILD/meshlab-2023.12-build/meshlab-MeshLab-2023.12/src/vcglib/wrap/io_trimesh/import_ply.h:1124:55: error: ‘class vcg::tri::io::ImporterPLY<OpenMeshType>’ has no member named ‘pi’ [-Wtemplate-body]
 1124 |                                                 this->pi.status = PlyInfo::E_SHORTFILE;
      |                                                       ^~
/builddir/build/BUILD/meshlab-2023.12-build/meshlab-MeshLab-2023.12/src/vcglib/wrap/io_trimesh/import_ply.h:1125:62: error: ‘class vcg::tri::io::ImporterPLY<OpenMeshType>’ has no member named ‘pi’ [-Wtemplate-body]
 1125 |                                                 return this->pi.status;
      |                                                              ^~
/builddir/build/BUILD/meshlab-2023.12-build/meshlab-MeshLab-2023.12/src/vcglib/wrap/io_trimesh/import_ply.h:1127:47: error: ‘class vcg::tri::io::ImporterPLY<OpenMeshType>’ has no member named ‘camera’ [-Wtemplate-body]
 1127 |                                         this->camera.valid     = true;
      |                                               ^~~~~~
/builddir/build/BUILD/meshlab-2023.12-build/meshlab-MeshLab-2023.12/src/vcglib/wrap/io_trimesh/import_ply.h:1128:47: error: ‘class vcg::tri::io::ImporterPLY<OpenMeshType>’ has no member named ‘camera’ [-Wtemplate-body]
 1128 |                                         this->camera.view_p[0] = ca.view_px;
      |                                               ^~~~~~
/builddir/build/BUILD/meshlab-2023.12-build/meshlab-MeshLab-2023.12/src/vcglib/wrap/io_trimesh/import_ply.h:1129:47: error: ‘class vcg::tri::io::ImporterPLY<OpenMeshType>’ has no member named ‘camera’ [-Wtemplate-body]
 1129 |                                         this->camera.view_p[1] = ca.view_py;
      |                                               ^~~~~~
/builddir/build/BUILD/meshlab-2023.12-build/meshlab-MeshLab-2023.12/src/vcglib/wrap/io_trimesh/import_ply.h:1130:47: error: ‘class vcg::tri::io::ImporterPLY<OpenMeshType>’ has no member named ‘camera’ [-Wtemplate-body]
 1130 |                                         this->camera.view_p[2] = ca.view_pz;
      |                                               ^~~~~~
/builddir/build/BUILD/meshlab-2023.12-build/meshlab-MeshLab-2023.12/src/vcglib/wrap/io_trimesh/import_ply.h:1131:47: error: ‘class vcg::tri::io::ImporterPLY<OpenMeshType>’ has no member named ‘camera’ [-Wtemplate-body]
 1131 |                                         this->camera.x_axis[0] = ca.x_axisx;
      |                                               ^~~~~~
/builddir/build/BUILD/meshlab-2023.12-build/meshlab-MeshLab-2023.12/src/vcglib/wrap/io_trimesh/import_ply.h:1132:47: error: ‘class vcg::tri::io::ImporterPLY<OpenMeshType>’ has no member named ‘camera’ [-Wtemplate-body]
 1132 |                                         this->camera.x_axis[1] = ca.x_axisy;
      |                                               ^~~~~~
/builddir/build/BUILD/meshlab-2023.12-build/meshlab-MeshLab-2023.12/src/vcglib/wrap/io_trimesh/import_ply.h:1133:47: error: ‘class vcg::tri::io::ImporterPLY<OpenMeshType>’ has no member named ‘camera’ [-Wtemplate-body]
 1133 |                                         this->camera.x_axis[2] = ca.x_axisz;
      |                                               ^~~~~~
/builddir/build/BUILD/meshlab-2023.12-build/meshlab-MeshLab-2023.12/src/vcglib/wrap/io_trimesh/import_ply.h:1134:47: error: ‘class vcg::tri::io::ImporterPLY<OpenMeshType>’ has no member named ‘camera’ [-Wtemplate-body]
 1134 |                                         this->camera.y_axis[0] = ca.y_axisx;
      |                                               ^~~~~~
/builddir/build/BUILD/meshlab-2023.12-build/meshlab-MeshLab-2023.12/src/vcglib/wrap/io_trimesh/import_ply.h:1135:47: error: ‘class vcg::tri::io::ImporterPLY<OpenMeshType>’ has no member named ‘camera’ [-Wtemplate-body]
 1135 |                                         this->camera.y_axis[1] = ca.y_axisy;
      |                                               ^~~~~~
/builddir/build/BUILD/meshlab-2023.12-build/meshlab-MeshLab-2023.12/src/vcglib/wrap/io_trimesh/import_ply.h:1136:47: error: ‘class vcg::tri::io::ImporterPLY<OpenMeshType>’ has no member named ‘camera’ [-Wtemplate-body]
 1136 |                                         this->camera.y_axis[2] = ca.y_axisz;
      |                                               ^~~~~~
/builddir/build/BUILD/meshlab-2023.12-build/meshlab-MeshLab-2023.12/src/vcglib/wrap/io_trimesh/import_ply.h:1137:47: error: ‘class vcg::tri::io::ImporterPLY<OpenMeshType>’ has no member named ‘camera’ [-Wtemplate-body]
 1137 |                                         this->camera.z_axis[0] = ca.z_axisx;
      |                                               ^~~~~~
/builddir/build/BUILD/meshlab-2023.12-build/meshlab-MeshLab-2023.12/src/vcglib/wrap/io_trimesh/import_ply.h:1138:47: error: ‘class vcg::tri::io::ImporterPLY<OpenMeshType>’ has no member named ‘camera’ [-Wtemplate-body]
 1138 |                                         this->camera.z_axis[1] = ca.z_axisy;
      |                                               ^~~~~~
/builddir/build/BUILD/meshlab-2023.12-build/meshlab-MeshLab-2023.12/src/vcglib/wrap/io_trimesh/import_ply.h:1139:47: error: ‘class vcg::tri::io::ImporterPLY<OpenMeshType>’ has no member named ‘camera’ [-Wtemplate-body]
 1139 |                                         this->camera.z_axis[2] = ca.z_axisz;
      |                                               ^~~~~~
/builddir/build/BUILD/meshlab-2023.12-build/meshlab-MeshLab-2023.12/src/vcglib/wrap/io_trimesh/import_ply.h:1140:47: error: ‘class vcg::tri::io::ImporterPLY<OpenMeshType>’ has no member named ‘camera’ [-Wtemplate-body]
 1140 |                                         this->camera.f         = ca.focal;
      |                                               ^~~~~~
/builddir/build/BUILD/meshlab-2023.12-build/meshlab-MeshLab-2023.12/src/vcglib/wrap/io_trimesh/import_ply.h:1141:47: error: ‘class vcg::tri::io::ImporterPLY<OpenMeshType>’ has no member named ‘camera’ [-Wtemplate-body]
 1141 |                                         this->camera.s[0]      = ca.scalex;
      |                                               ^~~~~~
/builddir/build/BUILD/meshlab-2023.12-build/meshlab-MeshLab-2023.12/src/vcglib/wrap/io_trimesh/import_ply.h:1142:47: error: ‘class vcg::tri::io::ImporterPLY<OpenMeshType>’ has no member named ‘camera’ [-Wtemplate-body]
 1142 |                                         this->camera.s[1]      = ca.scaley;
      |                                               ^~~~~~
/builddir/build/BUILD/meshlab-2023.12-build/meshlab-MeshLab-2023.12/src/vcglib/wrap/io_trimesh/import_ply.h:1143:47: error: ‘class vcg::tri::io::ImporterPLY<OpenMeshType>’ has no member named ‘camera’ [-Wtemplate-body]
 1143 |                                         this->camera.c[0]      = ca.centerx;
      |                                               ^~~~~~
/builddir/build/BUILD/meshlab-2023.12-build/meshlab-MeshLab-2023.12/src/vcglib/wrap/io_trimesh/import_ply.h:1144:47: error: ‘class vcg::tri::io::ImporterPLY<OpenMeshType>’ has no member named ‘camera’ [-Wtemplate-body]
 1144 |                                         this->camera.c[1]      = ca.centery;
      |                                               ^~~~~~
/builddir/build/BUILD/meshlab-2023.12-build/meshlab-MeshLab-2023.12/src/vcglib/wrap/io_trimesh/import_ply.h:1145:47: error: ‘class vcg::tri::io::ImporterPLY<OpenMeshType>’ has no member named ‘camera’ [-Wtemplate-body]
 1145 |                                         this->camera.viewport[0] = ca.viewportx;
      |                                               ^~~~~~
/builddir/build/BUILD/meshlab-2023.12-build/meshlab-MeshLab-2023.12/src/vcglib/wrap/io_trimesh/import_ply.h:1146:47: error: ‘class vcg::tri::io::ImporterPLY<OpenMeshType>’ has no member named ‘camera’ [-Wtemplate-body]
 1146 |                                         this->camera.viewport[1] = ca.viewporty;
      |                                               ^~~~~~
/builddir/build/BUILD/meshlab-2023.12-build/meshlab-MeshLab-2023.12/src/vcglib/wrap/io_trimesh/import_ply.h:1147:47: error: ‘class vcg::tri::io::ImporterPLY<OpenMeshType>’ has no member named ‘camera’ [-Wtemplate-body]
 1147 |                                         this->camera.k[0]      = ca.k1;
      |                                               ^~~~~~
/builddir/build/BUILD/meshlab-2023.12-build/meshlab-MeshLab-2023.12/src/vcglib/wrap/io_trimesh/import_ply.h:1148:47: error: ‘class vcg::tri::io::ImporterPLY<OpenMeshType>’ has no member named ‘camera’ [-Wtemplate-body]
 1148 |                                         this->camera.k[1]      = ca.k2;
      |                                               ^~~~~~
/builddir/build/BUILD/meshlab-2023.12-build/meshlab-MeshLab-2023.12/src/vcglib/wrap/io_trimesh/import_ply.h:1149:47: error: ‘class vcg::tri::io::ImporterPLY<OpenMeshType>’ has no member named ‘camera’ [-Wtemplate-body]
 1149 |                                         this->camera.k[2]      = ca.k3;
      |                                               ^~~~~~
/builddir/build/BUILD/meshlab-2023.12-build/meshlab-MeshLab-2023.12/src/vcglib/wrap/io_trimesh/import_ply.h:1150:47: error: ‘class vcg::tri::io::ImporterPLY<OpenMeshType>’ has no member named ‘camera’ [-Wtemplate-body]
 1150 |                                         this->camera.k[3]      = ca.k4;
      |                                               ^~~~~~


See:

https://fedoraproject.org/wiki/F42-gcc-15-mass-prebuild#C++:_error_with_-Wtemplate-body
https://trofi.github.io/posts/322-gcc-15-template-checking-improvements.html

for more details and hints on how to fix this.

Comment 1 Miro Hrončok 2025-01-23 11:52:59 UTC
*** Bug 2340844 has been marked as a duplicate of this bug. ***

Comment 2 Aoife Moloney 2025-02-26 13:24:36 UTC
This bug appears to have been reported against 'rawhide' during the Fedora Linux 42 development cycle.
Changing version to 42.

Comment 3 Fedora Update System 2025-03-24 15:27:51 UTC
FEDORA-2025-8b4a758d6d (meshlab-2023.12-11.fc42) has been submitted as an update to Fedora 42.
https://bodhi.fedoraproject.org/updates/FEDORA-2025-8b4a758d6d

Comment 4 Fedora Update System 2025-03-25 02:00:18 UTC
FEDORA-2025-8b4a758d6d has been pushed to the Fedora 42 testing repository.
Soon you'll be able to install the update with the following command:
`sudo dnf upgrade --enablerepo=updates-testing --refresh --advisory=FEDORA-2025-8b4a758d6d`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2025-8b4a758d6d

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

Comment 5 Fedora Update System 2025-04-01 16:08:50 UTC
FEDORA-2025-8b4a758d6d (meshlab-2023.12-11.fc42) has been pushed to the Fedora 42 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.