Bug#1096747: godot: ftbfs with GCC-15

Matthias Klose doko at debian.org
Mon Feb 17 17:17:04 GMT 2025


Package: src:godot
Version: 3.6+ds-2
Severity: important
Tags: sid forky
User: debian-gcc at lists.debian.org
Usertags: ftbfs-gcc-15

[This bug is NOT targeted to the upcoming trixie release]

Please keep this issue open in the bug tracker for the package it
was filed for.  If a fix in another package is required, please
file a bug for the other package (or clone), and add a block in this
package. Please keep the issue open until the package can be built in
a follow-up test rebuild.

The package fails to build in a test rebuild on at least amd64 with
gcc-15/g++-15, but succeeds to build with gcc-14/g++-14. The
severity of this report will be raised before the forky release.

The full build log can be found at:
http://qa-logs.debian.net/2025/02/16/amd64exp/godot_3.6+ds-2_unstable_gccexp.log.gz
The last lines of the build log are at the end of this report.

To build with GCC 15, either set CC=gcc-15 CXX=g++-15 explicitly,
or install the gcc, g++, gfortran, ... packages from experimental.

  apt-get -t=experimental install g++ 

GCC 15 now defaults to the C23/C++23 standards, exposing many FTBFS.
Other Common build failures are new warnings resulting in build failures
with -Werror turned on, or new/dropped symbols in Debian symbols files.
For other C/C++ related build failures see the porting guide at
http://gcc.gnu.org/gcc-15/porting_to.html

[...]
In file included from thirdparty/embree/kernels/common/../bvh/../geometry/spherei_intersector.h:7,
                 from thirdparty/embree/kernels/common/../bvh/../geometry/curve_intersector_virtual.h:20,
                 from thirdparty/embree/kernels/common/../bvh/bvh_factory.h:10,
                 from thirdparty/embree/kernels/common/../bvh/bvh4_factory.h:6,
                 from thirdparty/embree/kernels/common/device.cpp:19:
thirdparty/embree/kernels/common/../bvh/../geometry/pointi.h: In function 'std::ostream& embree::operator<<(std::ostream&, const PointMi<M>&)':
thirdparty/embree/kernels/common/../bvh/../geometry/pointi.h:215:51: error: 'const struct embree::PointMi<M>' has no member named 'v0' [-Wtemplate-body]
  215 |       return cout << "Line" << M << "i {" << line.v0 << ", " << line.geomID() << ", " << line.primID() << "}";
      |                                                   ^~
In file included from thirdparty/embree/kernels/common/scene_curves.h:10,
                 from thirdparty/embree/kernels/common/scene.h:14,
                 from thirdparty/embree/kernels/common/accelset.cpp:5:
thirdparty/embree/kernels/common/../subdiv/bezier_curve.h: In function 'std::ostream& embree::operator<<(std::ostream&, const QuadraticBezierCurve<V>&)':
thirdparty/embree/kernels/common/../subdiv/bezier_curve.h:138:56: error: 'const struct embree::QuadraticBezierCurve<V>' has no member named 'u' [-Wtemplate-body]
  138 |         return cout << "QuadraticBezierCurve ( (" << a.u.lower << ", " << a.u.upper << "), " << a.v0 << ", " << a.v1 << ", " << a.v2 << ")";
      |                                                        ^
thirdparty/embree/kernels/common/../subdiv/bezier_curve.h:138:77: error: 'const struct embree::QuadraticBezierCurve<V>' has no member named 'u' [-Wtemplate-body]
  138 |         return cout << "QuadraticBezierCurve ( (" << a.u.lower << ", " << a.u.upper << "), " << a.v0 << ", " << a.v1 << ", " << a.v2 << ")";
      |                                                                             ^
g++ -o thirdparty/embree/kernels/common/scene.x11.opt.tools.64.o -c -std=gnu++14 -g -O2 -ffile-prefix-map=/build/reproducible-path/godot-3.6+ds=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -fno-strict-overflow -fno-delete-null-pointer-checks -fwrapv -fsigned-char -fno-strict-aliasing -fno-tree-vectorize -fvisibility=hidden -fvisibility-inlines-hidden -g2 -O2 -Wdate-time -D_FORTIFY_SOURCE=2 -gdwarf-4 -pipe -fno-exceptions -Wall -w -DDEBUG_ENABLED -DNDEBUG -DNO_EDITOR_SPLASH -DTOUCH_ENABLED -DALSA_ENABLED -DALSAMIDI_ENABLED -DPULSEAUDIO_ENABLED -D_REENTRANT -DJOYDEV_ENABLED -DUDEV_ENABLED -DX11_ENABLED -DUNIX_ENABLED -DOPENGL_ENABLED -DGLES_ENABLED -D_FILE_OFFSET_BITS=64 -DPTRCALL_ENABLED -DTOOLS_ENABLED -DMINIZIP_ENABLED -DGLAD_ENABLED -DGLES_OVER_GL -DEMBREE_TARGET_SSE2 -DEMBREE_LOWEST_ISA -DTASKING_INTERNAL -D__SSE2__ -D__SSE__ -Ithirdparty/embree -Ithirdparty/embree/include -Ithirdparty/glad -Iplatform/x11 -I/usr/include/miniupnpc -I/usr/include/wslay -I/usr/include/recastnavigation -I. -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/bullet -I/include -I/usr/include/opus -I/usr/include/webp thirdparty/embree/kernels/common/scene.cpp
scons: *** [thirdparty/embree/kernels/common/device.x11.opt.tools.64.o] Error 1
scons: *** [thirdparty/embree/kernels/common/accelset.x11.opt.tools.64.o] Error 1
In file included from thirdparty/embree/kernels/common/scene_curves.h:10,
                 from thirdparty/embree/kernels/common/scene.h:14,
                 from thirdparty/embree/kernels/common/rtcore.cpp:8:
thirdparty/embree/kernels/common/../subdiv/bezier_curve.h: In function 'std::ostream& embree::operator<<(std::ostream&, const QuadraticBezierCurve<V>&)':
thirdparty/embree/kernels/common/../subdiv/bezier_curve.h:138:56: error: 'const struct embree::QuadraticBezierCurve<V>' has no member named 'u' [-Wtemplate-body]
  138 |         return cout << "QuadraticBezierCurve ( (" << a.u.lower << ", " << a.u.upper << "), " << a.v0 << ", " << a.v1 << ", " << a.v2 << ")";
      |                                                        ^
thirdparty/embree/kernels/common/../subdiv/bezier_curve.h:138:77: error: 'const struct embree::QuadraticBezierCurve<V>' has no member named 'u' [-Wtemplate-body]
  138 |         return cout << "QuadraticBezierCurve ( (" << a.u.lower << ", " << a.u.upper << "), " << a.v0 << ", " << a.v1 << ", " << a.v2 << ")";
      |                                                                             ^
scons: *** [thirdparty/embree/kernels/common/rtcore.x11.opt.tools.64.o] Error 1
In file included from thirdparty/embree/kernels/common/scene_curves.h:10,
                 from thirdparty/embree/kernels/common/scene.h:14,
                 from thirdparty/embree/kernels/common/rtcore_builder.cpp:8:
thirdparty/embree/kernels/common/../subdiv/bezier_curve.h: In function 'std::ostream& embree::operator<<(std::ostream&, const QuadraticBezierCurve<V>&)':
thirdparty/embree/kernels/common/../subdiv/bezier_curve.h:138:56: error: 'const struct embree::QuadraticBezierCurve<V>' has no member named 'u' [-Wtemplate-body]
  138 |         return cout << "QuadraticBezierCurve ( (" << a.u.lower << ", " << a.u.upper << "), " << a.v0 << ", " << a.v1 << ", " << a.v2 << ")";
      |                                                        ^
thirdparty/embree/kernels/common/../subdiv/bezier_curve.h:138:77: error: 'const struct embree::QuadraticBezierCurve<V>' has no member named 'u' [-Wtemplate-body]
  138 |         return cout << "QuadraticBezierCurve ( (" << a.u.lower << ", " << a.u.upper << "), " << a.v0 << ", " << a.v1 << ", " << a.v2 << ")";
      |                                                                             ^
In file included from thirdparty/embree/kernels/common/scene_curves.h:10,
                 from thirdparty/embree/kernels/common/scene.h:14,
                 from thirdparty/embree/kernels/common/scene.cpp:4:
thirdparty/embree/kernels/common/../subdiv/bezier_curve.h: In function 'std::ostream& embree::operator<<(std::ostream&, const QuadraticBezierCurve<V>&)':
thirdparty/embree/kernels/common/../subdiv/bezier_curve.h:138:56: error: 'const struct embree::QuadraticBezierCurve<V>' has no member named 'u' [-Wtemplate-body]
  138 |         return cout << "QuadraticBezierCurve ( (" << a.u.lower << ", " << a.u.upper << "), " << a.v0 << ", " << a.v1 << ", " << a.v2 << ")";
      |                                                        ^
thirdparty/embree/kernels/common/../subdiv/bezier_curve.h:138:77: error: 'const struct embree::QuadraticBezierCurve<V>' has no member named 'u' [-Wtemplate-body]
  138 |         return cout << "QuadraticBezierCurve ( (" << a.u.lower << ", " << a.u.upper << "), " << a.v0 << ", " << a.v1 << ", " << a.v2 << ")";
      |                                                                             ^
In file included from thirdparty/embree/kernels/common/../bvh/../geometry/spherei_intersector.h:7,
                 from thirdparty/embree/kernels/common/../bvh/../geometry/curve_intersector_virtual.h:20,
                 from thirdparty/embree/kernels/common/../bvh/bvh_factory.h:10,
                 from thirdparty/embree/kernels/common/../bvh/bvh4_factory.h:6,
                 from thirdparty/embree/kernels/common/scene.cpp:6:
thirdparty/embree/kernels/common/../bvh/../geometry/pointi.h: In function 'std::ostream& embree::operator<<(std::ostream&, const PointMi<M>&)':
thirdparty/embree/kernels/common/../bvh/../geometry/pointi.h:215:51: error: 'const struct embree::PointMi<M>' has no member named 'v0' [-Wtemplate-body]
  215 |       return cout << "Line" << M << "i {" << line.v0 << ", " << line.geomID() << ", " << line.primID() << "}";
      |                                                   ^~
scons: *** [thirdparty/embree/kernels/common/rtcore_builder.x11.opt.tools.64.o] Error 1
scons: *** [thirdparty/embree/kernels/common/scene.x11.opt.tools.64.o] Error 1
scons: building terminated because of errors.
[Time elapsed: 00:05:50.690]
make[1]: *** [debian/rules:89: override_dh_auto_build] Error 2
make[1]: Leaving directory '/build/reproducible-path/godot-3.6+ds'
make: *** [debian/rules:77: binary] Error 2
dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2



More information about the Pkg-games-devel mailing list