[Pkg-deepin-devel] Bug#1096708: gio-qt: ftbfs with GCC-15

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


Package: src:gio-qt
Version: 0.0.14-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/gio-qt_0.0.14-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

[...]
      |      ^~~
[ 81%] Linking CXX executable qgio-tools
cd /build/reproducible-path/gio-qt-0.0.14/obj-x86_64-linux-gnu/qgio-tools && /usr/bin/cmake -E cmake_link_script CMakeFiles/qgio-tools.dir/link.txt --verbose=1
/usr/bin/c++ -g -Wall -Wl,-z,relro -Wl,-z,now -Wl,--dependency-file=CMakeFiles/qgio-tools.dir/link.d "CMakeFiles/qgio-tools.dir/main.cpp.o" -o qgio-tools  -Wl,-rpath,/build/reproducible-path/gio-qt-0.0.14/obj-x86_64-linux-gnu/gio-qt ../gio-qt/libgio-qt.so.0.0.1 /usr/lib/x86_64-linux-gnu/libQt5Core.so.5.15.15 -lgiomm-2.4 -lgio-2.0 -lglibmm-2.4 -lgobject-2.0 -lglib-2.0 -lsigc-2.0
make[3]: Leaving directory '/build/reproducible-path/gio-qt-0.0.14/obj-x86_64-linux-gnu'
[ 81%] Built target qgio-tools
/build/reproducible-path/gio-qt-0.0.14/gio-qt/source/dgiosettings.cpp: In function ‘QVariant qconf_types_to_qvariant(GVariant*)’:
/build/reproducible-path/gio-qt-0.0.14/gio-qt/source/dgiosettings.cpp:16:12: warning: enumeration value ‘G_VARIANT_CLASS_HANDLE’ not handled in switch [-Wswitch]
   16 |     switch (g_variant_classify(value)) {
      |            ^
/build/reproducible-path/gio-qt-0.0.14/gio-qt/source/dgiosettings.cpp:16:12: warning: enumeration value ‘G_VARIANT_CLASS_OBJECT_PATH’ not handled in switch [-Wswitch]
/build/reproducible-path/gio-qt-0.0.14/gio-qt/source/dgiosettings.cpp:16:12: warning: enumeration value ‘G_VARIANT_CLASS_SIGNATURE’ not handled in switch [-Wswitch]
/build/reproducible-path/gio-qt-0.0.14/gio-qt/source/dgiosettings.cpp:16:12: warning: enumeration value ‘G_VARIANT_CLASS_VARIANT’ not handled in switch [-Wswitch]
/build/reproducible-path/gio-qt-0.0.14/gio-qt/source/dgiosettings.cpp:16:12: warning: enumeration value ‘G_VARIANT_CLASS_MAYBE’ not handled in switch [-Wswitch]
/build/reproducible-path/gio-qt-0.0.14/gio-qt/source/dgiosettings.cpp:16:12: warning: enumeration value ‘G_VARIANT_CLASS_TUPLE’ not handled in switch [-Wswitch]
/build/reproducible-path/gio-qt-0.0.14/gio-qt/source/dgiosettings.cpp:16:12: warning: enumeration value ‘G_VARIANT_CLASS_DICT_ENTRY’ not handled in switch [-Wswitch]
/build/reproducible-path/gio-qt-0.0.14/gio-qt/source/dgiosettings.cpp: In function ‘GVariant* qconf_types_collect_from_variant(const GVariantType*, const QVariant&)’:
/build/reproducible-path/gio-qt-0.0.14/gio-qt/source/dgiosettings.cpp:133:28: warning: ‘void* g_memdup(gconstpointer, guint)’ is deprecated: Use 'g_memdup2' instead [-Wdeprecated-declarations]
  133 |             data = g_memdup(array.data(), static_cast<guint>(size));
      |                    ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/glib-2.0/glib/gstring.h:37,
                 from /usr/include/glib-2.0/glib/giochannel.h:36,
                 from /usr/include/glib-2.0/glib.h:56,
                 from /usr/include/glibmm-2.4/glibmm/unicode.h:23,
                 from /usr/include/glibmm-2.4/glibmm/ustring.h:21,
                 from /usr/include/giomm-2.4/giomm/icon.h:8,
                 from /build/reproducible-path/gio-qt-0.0.14/gio-qt/private/dgiohelper.h:8,
                 from /build/reproducible-path/gio-qt-0.0.14/gio-qt/source/dgiosettings.cpp:6:
/usr/include/glib-2.0/glib/gstrfuncs.h:338:23: note: declared here
  338 | gpointer              g_memdup         (gconstpointer mem,
      |                       ^~~~~~~~
/build/reproducible-path/gio-qt-0.0.14/gio-qt/source/dgiosettings.cpp: In member function ‘bool DGioSettingsPrivate::includeKey(const gchar*) const’:
/build/reproducible-path/gio-qt-0.0.14/gio-qt/source/dgiosettings.cpp:183:47: warning: ‘gchar** g_settings_list_keys(GSettings*)’ is deprecated: Use 'g_settings_schema_list_keys' instead [-Wdeprecated-declarations]
  183 |         gchar **allKeys = g_settings_list_keys(settings);
      |                           ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~
In file included from /usr/include/glib-2.0/gio/gio.h:137,
                 from /build/reproducible-path/gio-qt-0.0.14/gio-qt/source/dgiosettings.cpp:12:
/usr/include/glib-2.0/gio/gsettings.h:98:25: note: declared here
   98 | gchar **                g_settings_list_keys                            (GSettings          *settings);
      |                         ^~~~~~~~~~~~~~~~~~~~
/build/reproducible-path/gio-qt-0.0.14/gio-qt/source/dgiosettings.cpp: In member function ‘QStringList DGioSettings::keys() const’:
/build/reproducible-path/gio-qt-0.0.14/gio-qt/source/dgiosettings.cpp:350:40: warning: ‘gchar** g_settings_list_keys(GSettings*)’ is deprecated: Use 'g_settings_schema_list_keys' instead [-Wdeprecated-declarations]
  350 |     gchar** keys = g_settings_list_keys(d->settings);
      |                    ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/usr/include/glib-2.0/gio/gsettings.h:98:25: note: declared here
   98 | gchar **                g_settings_list_keys                            (GSettings          *settings);
      |                         ^~~~~~~~~~~~~~~~~~~~
[ 84%] Linking CXX shared library libgio-qt6.so
cd /build/reproducible-path/gio-qt-0.0.14/obj-x86_64-linux-gnu/gio-qt && /usr/bin/cmake -E cmake_link_script CMakeFiles/gio-qt_qt6.dir/link.txt --verbose=1
/usr/bin/ld: CMakeFiles/gio-qt_qt6.dir/source/dglibutils.cpp.o:(.rodata+0x10): multiple definition of `QtPrivate::IsFloatType_v<_Float16>'; CMakeFiles/gio-qt_qt6.dir/gio-qt_qt6_autogen/mocs_compilation.cpp.o:(.rodata+0x10): first defined here
/usr/bin/ld: CMakeFiles/gio-qt_qt6.dir/source/dgiovolumemanager.cpp.o:(.rodata+0x10): multiple definition of `QtPrivate::IsFloatType_v<_Float16>'; CMakeFiles/gio-qt_qt6.dir/gio-qt_qt6_autogen/mocs_compilation.cpp.o:(.rodata+0x10): first defined here
/usr/bin/ld: CMakeFiles/gio-qt_qt6.dir/source/dgiomountoperation.cpp.o:(.rodata+0x10): multiple definition of `QtPrivate::IsFloatType_v<_Float16>'; CMakeFiles/gio-qt_qt6.dir/gio-qt_qt6_autogen/mocs_compilation.cpp.o:(.rodata+0x10): first defined here
/usr/bin/ld: CMakeFiles/gio-qt_qt6.dir/source/dgiomount.cpp.o:(.rodata+0x18): multiple definition of `QtPrivate::IsFloatType_v<_Float16>'; CMakeFiles/gio-qt_qt6.dir/gio-qt_qt6_autogen/mocs_compilation.cpp.o:(.rodata+0x10): first defined here
/usr/bin/ld: CMakeFiles/gio-qt_qt6.dir/source/dgiovolume.cpp.o:(.rodata+0x10): multiple definition of `QtPrivate::IsFloatType_v<_Float16>'; CMakeFiles/gio-qt_qt6.dir/gio-qt_qt6_autogen/mocs_compilation.cpp.o:(.rodata+0x10): first defined here
/usr/bin/ld: CMakeFiles/gio-qt_qt6.dir/source/dgiofile.cpp.o:(.rodata+0x18): multiple definition of `QtPrivate::IsFloatType_v<_Float16>'; CMakeFiles/gio-qt_qt6.dir/gio-qt_qt6_autogen/mocs_compilation.cpp.o:(.rodata+0x10): first defined here
/usr/bin/ld: CMakeFiles/gio-qt_qt6.dir/source/dgiofileinfo.cpp.o:(.rodata+0x10): multiple definition of `QtPrivate::IsFloatType_v<_Float16>'; CMakeFiles/gio-qt_qt6.dir/gio-qt_qt6_autogen/mocs_compilation.cpp.o:(.rodata+0x10): first defined here
/usr/bin/ld: CMakeFiles/gio-qt_qt6.dir/source/dgiofileiterator.cpp.o:(.rodata+0x18): multiple definition of `QtPrivate::IsFloatType_v<_Float16>'; CMakeFiles/gio-qt_qt6.dir/gio-qt_qt6_autogen/mocs_compilation.cpp.o:(.rodata+0x10): first defined here
/usr/bin/ld: CMakeFiles/gio-qt_qt6.dir/source/dgiodrive.cpp.o:(.rodata+0x10): multiple definition of `QtPrivate::IsFloatType_v<_Float16>'; CMakeFiles/gio-qt_qt6.dir/gio-qt_qt6_autogen/mocs_compilation.cpp.o:(.rodata+0x10): first defined here
/usr/bin/ld: CMakeFiles/gio-qt_qt6.dir/source/dgiosettings.cpp.o:(.rodata+0x18): multiple definition of `QtPrivate::IsFloatType_v<_Float16>'; CMakeFiles/gio-qt_qt6.dir/gio-qt_qt6_autogen/mocs_compilation.cpp.o:(.rodata+0x10): first defined here
collect2: error: ld returned 1 exit status
/usr/bin/c++ -fPIC -g -Wall -Wl,--dependency-file=CMakeFiles/gio-qt_qt6.dir/link.d -Wl,-z,relro -Wl,-z,now -shared -Wl,-soname,libgio-qt6.so.0 -o libgio-qt6.so.0.0.1 "CMakeFiles/gio-qt_qt6.dir/gio-qt_qt6_autogen/mocs_compilation.cpp.o" "CMakeFiles/gio-qt_qt6.dir/source/dglibutils.cpp.o" "CMakeFiles/gio-qt_qt6.dir/source/dgiovolumemanager.cpp.o" "CMakeFiles/gio-qt_qt6.dir/source/dgiomountoperation.cpp.o" "CMakeFiles/gio-qt_qt6.dir/source/dgiomount.cpp.o" "CMakeFiles/gio-qt_qt6.dir/source/dgiovolume.cpp.o" "CMakeFiles/gio-qt_qt6.dir/source/dgiofile.cpp.o" "CMakeFiles/gio-qt_qt6.dir/source/dgiofileinfo.cpp.o" "CMakeFiles/gio-qt_qt6.dir/source/dgiofileiterator.cpp.o" "CMakeFiles/gio-qt_qt6.dir/source/dgiodrive.cpp.o" "CMakeFiles/gio-qt_qt6.dir/source/dgiosettings.cpp.o" "CMakeFiles/gio-qt_qt6.dir/private/dgiohelper.cpp.o"  /usr/lib/x86_64-linux-gnu/libQt6Core.so.6.7.2 -lgiomm-2.4 -lgio-2.0 -lglibmm-2.4 -lgobject-2.0 -lglib-2.0 -lsigc-2.0
make[3]: *** [gio-qt/CMakeFiles/gio-qt_qt6.dir/build.make:287: gio-qt/libgio-qt6.so.0.0.1] Error 1
make[3]: Leaving directory '/build/reproducible-path/gio-qt-0.0.14/obj-x86_64-linux-gnu'
make[2]: *** [CMakeFiles/Makefile2:181: gio-qt/CMakeFiles/gio-qt_qt6.dir/all] Error 2
make[2]: Leaving directory '/build/reproducible-path/gio-qt-0.0.14/obj-x86_64-linux-gnu'
make[1]: *** [Makefile:139: all] Error 2
make[1]: Leaving directory '/build/reproducible-path/gio-qt-0.0.14/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: *** [debian/rules:13: binary] Error 25
dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2



More information about the Pkg-deepin-devel mailing list