Bug#1037607: colobot: ftbfs with GCC-13

Matthias Klose doko at debian.org
Wed Jun 14 10:22:33 BST 2023


Package: src:colobot
Version: 0.2.0-2
Severity: normal
Tags: sid trixie
User: debian-gcc at lists.debian.org
Usertags: ftbfs-gcc-13

[This bug is 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-13/g++-13, but succeeds to build with gcc-12/g++-12. The
severity of this report will be raised before the trixie release.

The full build log can be found at:
http://qa-logs.debian.net/2023/05/22/logs/colobot_0.2.0-2_unstable_gccexp.log
The last lines of the build log are at the end of this report.

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

  apt-get -t=experimental install g++ 

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-13/porting_to.html

[...]
      |                         ^~~~~~~~~~~~~~~~~~~
/<<PKGBUILDDIR>>/src/common/resources/resourcemanager.cpp: In static member function ‘static bool CResourceManager::RemoveLocation(const std::string&)’:
/<<PKGBUILDDIR>>/src/common/resources/resourcemanager.cpp:79:37: warning: ‘int PHYSFS_removeFromSearchPath(const char*)’ is deprecated [-Wdeprecated-declarations]
   79 |     if (!PHYSFS_removeFromSearchPath(location.c_str()))
      |          ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~
/usr/include/physfs.h:878:17: note: declared here
  878 | PHYSFS_DECL int PHYSFS_removeFromSearchPath(const char *oldDir)
      |                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~
/<<PKGBUILDDIR>>/src/common/resources/resourcemanager.cpp:81:104: warning: ‘const char* PHYSFS_getLastError()’ is deprecated [-Wdeprecated-declarations]
   81 |         GetLogger()->Error("Error while unmounting \"%s\": %s\n", location.c_str(), PHYSFS_getLastError());
      |                                                                                     ~~~~~~~~~~~~~~~~~~~^~
/usr/include/physfs.h:654:25: note: declared here
  654 | PHYSFS_DECL const char *PHYSFS_getLastError(void) PHYSFS_DEPRECATED;
      |                         ^~~~~~~~~~~~~~~~~~~
/<<PKGBUILDDIR>>/src/common/resources/resourcemanager.cpp: In static member function ‘static bool CResourceManager::SetSaveLocation(const std::string&)’:
/<<PKGBUILDDIR>>/src/common/resources/resourcemanager.cpp:109:118: warning: ‘const char* PHYSFS_getLastError()’ is deprecated [-Wdeprecated-declarations]
  109 |         GetLogger()->Error("Error while setting save location to \"%s\": %s\n", location.c_str(), PHYSFS_getLastError());
      |                                                                                                   ~~~~~~~~~~~~~~~~~~~^~
/usr/include/physfs.h:654:25: note: declared here
  654 | PHYSFS_DECL const char *PHYSFS_getLastError(void) PHYSFS_DEPRECATED;
      |                         ^~~~~~~~~~~~~~~~~~~
/<<PKGBUILDDIR>>/src/common/resources/resourcemanager.cpp: In static member function ‘static bool CResourceManager::DirectoryExists(const std::string&)’:
/<<PKGBUILDDIR>>/src/common/resources/resourcemanager.cpp:154:81: warning: ‘int PHYSFS_isDirectory(const char*)’ is deprecated [-Wdeprecated-declarations]
  154 |         return PHYSFS_exists(CleanPath(directory).c_str()) && PHYSFS_isDirectory(CleanPath(directory).c_str());
      |                                                               ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/physfs.h:1159:17: note: declared here
 1159 | PHYSFS_DECL int PHYSFS_isDirectory(const char *fname) PHYSFS_DEPRECATED;
      |                 ^~~~~~~~~~~~~~~~~~
/<<PKGBUILDDIR>>/src/common/resources/resourcemanager.cpp: In static member function ‘static std::vector<std::__cxx11::basic_string<char> > CResourceManager::ListFiles(const std::string&, bool)’:
/<<PKGBUILDDIR>>/src/common/resources/resourcemanager.cpp:196:39: warning: ‘int PHYSFS_isDirectory(const char*)’ is deprecated [-Wdeprecated-declarations]
  196 |                 if (PHYSFS_isDirectory(path.c_str())) continue;
      |                     ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~
/usr/include/physfs.h:1159:17: note: declared here
 1159 | PHYSFS_DECL int PHYSFS_isDirectory(const char *fname) PHYSFS_DEPRECATED;
      |                 ^~~~~~~~~~~~~~~~~~
/<<PKGBUILDDIR>>/src/common/resources/resourcemanager.cpp: In static member function ‘static std::vector<std::__cxx11::basic_string<char> > CResourceManager::ListDirectories(const std::string&)’:
/<<PKGBUILDDIR>>/src/common/resources/resourcemanager.cpp:218:35: warning: ‘int PHYSFS_isDirectory(const char*)’ is deprecated [-Wdeprecated-declarations]
  218 |             if (PHYSFS_isDirectory(path.c_str()))
      |                 ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~
/usr/include/physfs.h:1159:17: note: declared here
 1159 | PHYSFS_DECL int PHYSFS_isDirectory(const char *fname) PHYSFS_DEPRECATED;
      |                 ^~~~~~~~~~~~~~~~~~
/<<PKGBUILDDIR>>/src/common/resources/resourcemanager.cpp: In static member function ‘static long long int CResourceManager::GetLastModificationTime(const std::string&)’:
/<<PKGBUILDDIR>>/src/common/resources/resourcemanager.cpp:247:37: warning: ‘PHYSFS_sint64 PHYSFS_getLastModTime(const char*)’ is deprecated [-Wdeprecated-declarations]
  247 |         return PHYSFS_getLastModTime(CleanPath(filename).c_str());
      |                ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/physfs.h:1206:27: note: declared here
 1206 | PHYSFS_DECL PHYSFS_sint64 PHYSFS_getLastModTime(const char *filename)
      |                           ^~~~~~~~~~~~~~~~~~~~~
[  9%] Building CXX object src/CMakeFiles/colobotbase.dir/common/settings.cpp.o
cd /<<PKGBUILDDIR>>/obj-x86_64-linux-gnu/src && /usr/bin/c++ -DBOOST_NO_CXX11_SCOPED_ENUMS -DBOOST_NO_SCOPED_ENUMS -DHAVE_DEMANGLE -DNOEXCEPT=noexcept -DTESTS -DTEST_VIRTUAL=virtual -I/<<PKGBUILDDIR>>/src -I/<<PKGBUILDDIR>>/src/.. -I/<<PKGBUILDDIR>>/obj-x86_64-linux-gnu/src -isystem /usr/include/AL -isystem /usr/include/SDL2 -isystem /<<PKGBUILDDIR>>/lib/localename -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -std=gnu++11 -Wall -Werror -Wold-style-cast -pedantic-errors -Wmissing-declarations -Wno-error=deprecated-declarations -Wsuggest-override  -O2 -g -DNDEBUG -MD -MT src/CMakeFiles/colobotbase.dir/common/settings.cpp.o -MF CMakeFiles/colobotbase.dir/common/settings.cpp.o.d -o CMakeFiles/colobotbase.dir/common/settings.cpp.o -c /<<PKGBUILDDIR>>/src/common/settings.cpp
make[4]: *** [src/CMakeFiles/colobotbase.dir/build.make:471: src/CMakeFiles/colobotbase.dir/common/restext.cpp.o] Error 1
make[4]: *** Waiting for unfinished jobs....
make[4]: Leaving directory '/<<PKGBUILDDIR>>/obj-x86_64-linux-gnu'
make[3]: *** [CMakeFiles/Makefile2:748: src/CMakeFiles/colobotbase.dir/all] Error 2
[ 10%] Linking CXX static library ../libgtest.a
cd /<<PKGBUILDDIR>>/obj-x86_64-linux-gnu/lib/gtest && /usr/bin/cmake -P CMakeFiles/gtest.dir/cmake_clean_target.cmake
cd /<<PKGBUILDDIR>>/obj-x86_64-linux-gnu/lib/gtest && /usr/bin/cmake -E cmake_link_script CMakeFiles/gtest.dir/link.txt --verbose=1
/usr/bin/ar qc ../libgtest.a "CMakeFiles/gtest.dir/src/gtest-all.cc.o"
/usr/bin/ranlib ../libgtest.a
make[4]: Leaving directory '/<<PKGBUILDDIR>>/obj-x86_64-linux-gnu'
[ 10%] Built target gtest
make[3]: Leaving directory '/<<PKGBUILDDIR>>/obj-x86_64-linux-gnu'
make[2]: *** [Makefile:169: all] Error 2
make[2]: Leaving directory '/<<PKGBUILDDIR>>/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 '/<<PKGBUILDDIR>>'
make: *** [debian/rules:21: build] Error 2
dpkg-buildpackage: error: debian/rules build subprocess returned exit status 2



More information about the Pkg-games-devel mailing list