Bug#1096454: colobot: ftbfs with GCC-15

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


Package: src:colobot
Version: 0.2.2-1
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/colobot_0.2.2-1_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 /usr/include/gtest/internal/gtest-port.h:295,
                 from /usr/include/gtest/gtest-message.h:57,
                 from /usr/include/gtest/gtest-assertion-result.h:46,
                 from /usr/include/gtest/gtest.h:63,
                 from /build/reproducible-path/colobot-0.2.2/test/unit/graphics/engine/lightman_test.cpp:26:
/usr/include/c++/15/ciso646:46:4: warning: #warning "<ciso646> is deprecated in C++17, use <version> to detect implementation-specific macros" [-Wcpp]
   46 | #  warning "<ciso646> is deprecated in C++17, use <version> to detect implementation-specific macros"
      |    ^~~~~~~
/build/reproducible-path/colobot-0.2.2/src/app/main.cpp:108:5: error: cannot declare ‘::main’ with a linkage specification [-Wpedantic]
  108 | int main(int argc, char *argv[])
      |     ^~~~
make[4]: *** [src/CMakeFiles/colobot.dir/build.make:82: src/CMakeFiles/colobot.dir/app/main.cpp.o] Error 1
make[4]: Leaving directory '/build/reproducible-path/colobot-0.2.2/obj-x86_64-linux-gnu'
make[3]: *** [CMakeFiles/Makefile2:963: src/CMakeFiles/colobot.dir/all] Error 2
make[3]: *** Waiting for unfinished jobs....
[ 98%] Building CXX object test/unit/CMakeFiles/colobot_ut.dir/math/func_test.cpp.o
cd /build/reproducible-path/colobot-0.2.2/obj-x86_64-linux-gnu/test/unit && /usr/bin/c++ -DBOOST_ATOMIC_DYN_LINK -DBOOST_ATOMIC_NO_LIB -DBOOST_FILESYSTEM_DYN_LINK -DBOOST_FILESYSTEM_NO_LIB -DBOOST_NO_CXX11_SCOPED_ENUMS -DBOOST_NO_SCOPED_ENUMS -DBOOST_REGEX_DYN_LINK -DBOOST_REGEX_NO_LIB -DGTEST_HAS_TR1_TUPLE=0 -DHAVE_DEMANGLE -DNOEXCEPT=noexcept -DTESTS -DTEST_VIRTUAL=virtual -I/build/reproducible-path/colobot-0.2.2/test/unit/common -I/build/reproducible-path/colobot-0.2.2/test/unit/math -I/build/reproducible-path/colobot-0.2.2/test/unit -I/build/reproducible-path/colobot-0.2.2/obj-x86_64-linux-gnu/test/unit -I/build/reproducible-path/colobot-0.2.2/src -I/build/reproducible-path/colobot-0.2.2/src/.. -I/build/reproducible-path/colobot-0.2.2/obj-x86_64-linux-gnu/src -I/build/reproducible-path/colobot-0.2.2/src/CBot/.. -isystem /build/reproducible-path/colobot-0.2.2/lib/hippomocks -isystem /build/reproducible-path/colobot-0.2.2/lib/localename -isystem /usr/include/SDL2 -isystem /usr/include/AL -g -O2 -ffile-prefix-map=/build/reproducible-path/colobot-0.2.2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -Wold-style-cast -pedantic-errors -Wmissing-declarations -Wno-error=deprecated-declarations -Wsuggest-override -pthread -O2 -g -DNDEBUG -std=c++17 -Wno-suggest-override -DGTEST_HAS_PTHREAD=1 -MD -MT test/unit/CMakeFiles/colobot_ut.dir/math/func_test.cpp.o -MF CMakeFiles/colobot_ut.dir/math/func_test.cpp.o.d -o CMakeFiles/colobot_ut.dir/math/func_test.cpp.o -c /build/reproducible-path/colobot-0.2.2/test/unit/math/func_test.cpp
In file included from /usr/include/gtest/internal/gtest-port.h:295,
                 from /usr/include/gtest/gtest-message.h:57,
                 from /usr/include/gtest/gtest-assertion-result.h:46,
                 from /usr/include/gtest/gtest.h:63,
                 from /build/reproducible-path/colobot-0.2.2/test/unit/math/func_test.cpp:26:
/usr/include/c++/15/ciso646:46:4: warning: #warning "<ciso646> is deprecated in C++17, use <version> to detect implementation-specific macros" [-Wcpp]
   46 | #  warning "<ciso646> is deprecated in C++17, use <version> to detect implementation-specific macros"
      |    ^~~~~~~
[ 98%] Building CXX object test/unit/CMakeFiles/colobot_ut.dir/math/geometry_test.cpp.o
cd /build/reproducible-path/colobot-0.2.2/obj-x86_64-linux-gnu/test/unit && /usr/bin/c++ -DBOOST_ATOMIC_DYN_LINK -DBOOST_ATOMIC_NO_LIB -DBOOST_FILESYSTEM_DYN_LINK -DBOOST_FILESYSTEM_NO_LIB -DBOOST_NO_CXX11_SCOPED_ENUMS -DBOOST_NO_SCOPED_ENUMS -DBOOST_REGEX_DYN_LINK -DBOOST_REGEX_NO_LIB -DGTEST_HAS_TR1_TUPLE=0 -DHAVE_DEMANGLE -DNOEXCEPT=noexcept -DTESTS -DTEST_VIRTUAL=virtual -I/build/reproducible-path/colobot-0.2.2/test/unit/common -I/build/reproducible-path/colobot-0.2.2/test/unit/math -I/build/reproducible-path/colobot-0.2.2/test/unit -I/build/reproducible-path/colobot-0.2.2/obj-x86_64-linux-gnu/test/unit -I/build/reproducible-path/colobot-0.2.2/src -I/build/reproducible-path/colobot-0.2.2/src/.. -I/build/reproducible-path/colobot-0.2.2/obj-x86_64-linux-gnu/src -I/build/reproducible-path/colobot-0.2.2/src/CBot/.. -isystem /build/reproducible-path/colobot-0.2.2/lib/hippomocks -isystem /build/reproducible-path/colobot-0.2.2/lib/localename -isystem /usr/include/SDL2 -isystem /usr/include/AL -g -O2 -ffile-prefix-map=/build/reproducible-path/colobot-0.2.2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -Wold-style-cast -pedantic-errors -Wmissing-declarations -Wno-error=deprecated-declarations -Wsuggest-override -pthread -O2 -g -DNDEBUG -std=c++17 -Wno-suggest-override -DGTEST_HAS_PTHREAD=1 -MD -MT test/unit/CMakeFiles/colobot_ut.dir/math/geometry_test.cpp.o -MF CMakeFiles/colobot_ut.dir/math/geometry_test.cpp.o.d -o CMakeFiles/colobot_ut.dir/math/geometry_test.cpp.o -c /build/reproducible-path/colobot-0.2.2/test/unit/math/geometry_test.cpp
In file included from /usr/include/gtest/internal/gtest-port.h:295,
                 from /usr/include/gtest/gtest-message.h:57,
                 from /usr/include/gtest/gtest-assertion-result.h:46,
                 from /usr/include/gtest/gtest.h:63,
                 from /build/reproducible-path/colobot-0.2.2/test/unit/math/geometry_test.cpp:25:
/usr/include/c++/15/ciso646:46:4: warning: #warning "<ciso646> is deprecated in C++17, use <version> to detect implementation-specific macros" [-Wcpp]
   46 | #  warning "<ciso646> is deprecated in C++17, use <version> to detect implementation-specific macros"
      |    ^~~~~~~
[ 98%] Building CXX object test/unit/CMakeFiles/colobot_ut.dir/math/matrix_test.cpp.o
cd /build/reproducible-path/colobot-0.2.2/obj-x86_64-linux-gnu/test/unit && /usr/bin/c++ -DBOOST_ATOMIC_DYN_LINK -DBOOST_ATOMIC_NO_LIB -DBOOST_FILESYSTEM_DYN_LINK -DBOOST_FILESYSTEM_NO_LIB -DBOOST_NO_CXX11_SCOPED_ENUMS -DBOOST_NO_SCOPED_ENUMS -DBOOST_REGEX_DYN_LINK -DBOOST_REGEX_NO_LIB -DGTEST_HAS_TR1_TUPLE=0 -DHAVE_DEMANGLE -DNOEXCEPT=noexcept -DTESTS -DTEST_VIRTUAL=virtual -I/build/reproducible-path/colobot-0.2.2/test/unit/common -I/build/reproducible-path/colobot-0.2.2/test/unit/math -I/build/reproducible-path/colobot-0.2.2/test/unit -I/build/reproducible-path/colobot-0.2.2/obj-x86_64-linux-gnu/test/unit -I/build/reproducible-path/colobot-0.2.2/src -I/build/reproducible-path/colobot-0.2.2/src/.. -I/build/reproducible-path/colobot-0.2.2/obj-x86_64-linux-gnu/src -I/build/reproducible-path/colobot-0.2.2/src/CBot/.. -isystem /build/reproducible-path/colobot-0.2.2/lib/hippomocks -isystem /build/reproducible-path/colobot-0.2.2/lib/localename -isystem /usr/include/SDL2 -isystem /usr/include/AL -g -O2 -ffile-prefix-map=/build/reproducible-path/colobot-0.2.2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -Wold-style-cast -pedantic-errors -Wmissing-declarations -Wno-error=deprecated-declarations -Wsuggest-override -pthread -O2 -g -DNDEBUG -std=c++17 -Wno-suggest-override -DGTEST_HAS_PTHREAD=1 -MD -MT test/unit/CMakeFiles/colobot_ut.dir/math/matrix_test.cpp.o -MF CMakeFiles/colobot_ut.dir/math/matrix_test.cpp.o.d -o CMakeFiles/colobot_ut.dir/math/matrix_test.cpp.o -c /build/reproducible-path/colobot-0.2.2/test/unit/math/matrix_test.cpp
In file included from /usr/include/gtest/internal/gtest-port.h:295,
                 from /usr/include/gtest/gtest-message.h:57,
                 from /usr/include/gtest/gtest-assertion-result.h:46,
                 from /usr/include/gtest/gtest.h:63,
                 from /build/reproducible-path/colobot-0.2.2/test/unit/math/matrix_test.cpp:30:
/usr/include/c++/15/ciso646:46:4: warning: #warning "<ciso646> is deprecated in C++17, use <version> to detect implementation-specific macros" [-Wcpp]
   46 | #  warning "<ciso646> is deprecated in C++17, use <version> to detect implementation-specific macros"
      |    ^~~~~~~
[ 98%] Building CXX object test/unit/CMakeFiles/colobot_ut.dir/math/vector_test.cpp.o
cd /build/reproducible-path/colobot-0.2.2/obj-x86_64-linux-gnu/test/unit && /usr/bin/c++ -DBOOST_ATOMIC_DYN_LINK -DBOOST_ATOMIC_NO_LIB -DBOOST_FILESYSTEM_DYN_LINK -DBOOST_FILESYSTEM_NO_LIB -DBOOST_NO_CXX11_SCOPED_ENUMS -DBOOST_NO_SCOPED_ENUMS -DBOOST_REGEX_DYN_LINK -DBOOST_REGEX_NO_LIB -DGTEST_HAS_TR1_TUPLE=0 -DHAVE_DEMANGLE -DNOEXCEPT=noexcept -DTESTS -DTEST_VIRTUAL=virtual -I/build/reproducible-path/colobot-0.2.2/test/unit/common -I/build/reproducible-path/colobot-0.2.2/test/unit/math -I/build/reproducible-path/colobot-0.2.2/test/unit -I/build/reproducible-path/colobot-0.2.2/obj-x86_64-linux-gnu/test/unit -I/build/reproducible-path/colobot-0.2.2/src -I/build/reproducible-path/colobot-0.2.2/src/.. -I/build/reproducible-path/colobot-0.2.2/obj-x86_64-linux-gnu/src -I/build/reproducible-path/colobot-0.2.2/src/CBot/.. -isystem /build/reproducible-path/colobot-0.2.2/lib/hippomocks -isystem /build/reproducible-path/colobot-0.2.2/lib/localename -isystem /usr/include/SDL2 -isystem /usr/include/AL -g -O2 -ffile-prefix-map=/build/reproducible-path/colobot-0.2.2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -Wold-style-cast -pedantic-errors -Wmissing-declarations -Wno-error=deprecated-declarations -Wsuggest-override -pthread -O2 -g -DNDEBUG -std=c++17 -Wno-suggest-override -DGTEST_HAS_PTHREAD=1 -MD -MT test/unit/CMakeFiles/colobot_ut.dir/math/vector_test.cpp.o -MF CMakeFiles/colobot_ut.dir/math/vector_test.cpp.o.d -o CMakeFiles/colobot_ut.dir/math/vector_test.cpp.o -c /build/reproducible-path/colobot-0.2.2/test/unit/math/vector_test.cpp
In file included from /usr/include/gtest/internal/gtest-port.h:295,
                 from /usr/include/gtest/gtest-message.h:57,
                 from /usr/include/gtest/gtest-assertion-result.h:46,
                 from /usr/include/gtest/gtest.h:63,
                 from /build/reproducible-path/colobot-0.2.2/test/unit/math/vector_test.cpp:30:
/usr/include/c++/15/ciso646:46:4: warning: #warning "<ciso646> is deprecated in C++17, use <version> to detect implementation-specific macros" [-Wcpp]
   46 | #  warning "<ciso646> is deprecated in C++17, use <version> to detect implementation-specific macros"
      |    ^~~~~~~
[100%] Linking CXX executable ../../colobot_ut
cd /build/reproducible-path/colobot-0.2.2/obj-x86_64-linux-gnu/test/unit && /usr/bin/cmake -E cmake_link_script CMakeFiles/colobot_ut.dir/link.txt --verbose=1
/usr/bin/c++ -g -O2 -ffile-prefix-map=/build/reproducible-path/colobot-0.2.2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -Wold-style-cast -pedantic-errors -Wmissing-declarations -Wno-error=deprecated-declarations -Wsuggest-override -pthread -O2 -g -DNDEBUG -Wl,-z,relro -Wl,--dependency-file=CMakeFiles/colobot_ut.dir/link.d CMakeFiles/colobot_ut.dir/main.cpp.o CMakeFiles/colobot_ut.dir/app/app_test.cpp.o CMakeFiles/colobot_ut.dir/CBot/CBot_test.cpp.o CMakeFiles/colobot_ut.dir/CBot/CBotFileUtils_test.cpp.o CMakeFiles/colobot_ut.dir/CBot/CBotToken_test.cpp.o CMakeFiles/colobot_ut.dir/common/config_file_test.cpp.o CMakeFiles/colobot_ut.dir/common/timeutils_test.cpp.o CMakeFiles/colobot_ut.dir/graphics/engine/lightman_test.cpp.o CMakeFiles/colobot_ut.dir/math/func_test.cpp.o CMakeFiles/colobot_ut.dir/math/geometry_test.cpp.o CMakeFiles/colobot_ut.dir/math/matrix_test.cpp.o CMakeFiles/colobot_ut.dir/math/vector_test.cpp.o -o ../../colobot_ut  -Wl,-rpath,/build/reproducible-path/colobot-0.2.2/obj-x86_64-linux-gnu/src/CBot ../../src/libcolobotbase.a /usr/lib/x86_64-linux-gnu/libgtest.a ../../src/CBot/libCBot.so ../../lib/localename/liblocalename.a /usr/lib/x86_64-linux-gnu/libSDL2.so /usr/lib/x86_64-linux-gnu/libSDL2_image.so /usr/lib/x86_64-linux-gnu/libSDL2_ttf.so /usr/lib/x86_64-linux-gnu/libGLX.so /usr/lib/x86_64-linux-gnu/libOpenGL.so /usr/lib/x86_64-linux-gnu/libpng.so /usr/lib/x86_64-linux-gnu/libz.so /usr/lib/x86_64-linux-gnu/libGLEW.so /usr/lib/x86_64-linux-gnu/libboost_filesystem.so.1.83.0 /usr/lib/x86_64-linux-gnu/libboost_atomic.so.1.83.0 /usr/lib/x86_64-linux-gnu/libboost_regex.so.1.83.0 /usr/lib/x86_64-linux-gnu/libphysfs.so /usr/lib/x86_64-linux-gnu/libsndfile.so /usr/lib/x86_64-linux-gnu/libopenal.so
cd /build/reproducible-path/colobot-0.2.2/obj-x86_64-linux-gnu/test/unit && /usr/bin/cmake -D TEST_TARGET=colobot_ut -D TEST_EXECUTABLE=/build/reproducible-path/colobot-0.2.2/obj-x86_64-linux-gnu/colobot_ut -D TEST_EXECUTOR= -D TEST_WORKING_DIR=/build/reproducible-path/colobot-0.2.2/obj-x86_64-linux-gnu -D TEST_EXTRA_ARGS= -D TEST_PROPERTIES= -D TEST_PREFIX= -D TEST_SUFFIX= -D TEST_FILTER= -D NO_PRETTY_TYPES=FALSE -D NO_PRETTY_VALUES=FALSE -D TEST_LIST=colobot_ut_TESTS -D CTEST_FILE=/build/reproducible-path/colobot-0.2.2/obj-x86_64-linux-gnu/test/unit/colobot_ut[1]_tests.cmake -D TEST_DISCOVERY_TIMEOUT=5 -D TEST_DISCOVERY_EXTRA_ARGS= -D TEST_XML_OUTPUT_DIR= -P /usr/share/cmake-3.31/Modules/GoogleTestAddTests.cmake
make[4]: Leaving directory '/build/reproducible-path/colobot-0.2.2/obj-x86_64-linux-gnu'
[100%] Built target colobot_ut
make[3]: Leaving directory '/build/reproducible-path/colobot-0.2.2/obj-x86_64-linux-gnu'
make[2]: *** [Makefile:169: all] Error 2
make[2]: Leaving directory '/build/reproducible-path/colobot-0.2.2/obj-x86_64-linux-gnu'
dh_auto_build: error: cd obj-x86_64-linux-gnu && make -j8 "INSTALL=install --strip-program=true" VERBOSE=1 returned exit code 2
make[1]: *** [debian/rules:34: override_dh_auto_build-arch] Error 25
make[1]: Leaving directory '/build/reproducible-path/colobot-0.2.2'
make: *** [debian/rules:21: binary] Error 2
dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2



More information about the Pkg-games-devel mailing list