Package: src:libkexiv2 Version: 24.12.0-1 Severity: important Tags: sid forky User: debian-...@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/libkexiv2_24.12.0-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 [...] | ~~~~~~~~~~~~^~~~~~~~~~~ /build/reproducible-path/libkexiv2-24.12.0/src/kexiv2exif.cpp:763:41: warning: comparison of integer expressions of different signedness: ‘size_t’ {aka ‘long unsigned int’} and ‘int’ [-Wsign-compare] 763 | if (it->count() <= component) | ~~~~~~~~~~~~^~~~~~~~~~~~ /build/reproducible-path/libkexiv2-24.12.0/src/kexiv2exif.cpp:778:41: warning: comparison of integer expressions of different signedness: ‘size_t’ {aka ‘long unsigned int’} and ‘int’ [-Wsign-compare] 778 | if (it->count() <= component) | ~~~~~~~~~~~~^~~~~~~~~~~~ [ 21%] Building CXX object src/CMakeFiles/KExiv2.dir/kexiv2xmp.cpp.o cd /build/reproducible-path/libkexiv2-24.12.0/obj-x86_64-linux-gnu/src && /usr/bin/c++ -DKEXIV2_DEPRECATED_WARNINGS_SINCE=0x50100 -DKEXIV2_DISABLE_DEPRECATED_BEFORE_AND_AT=0x50100 -DKExiv2_EXPORTS -DQT_CORE_LIB -DQT_DEPRECATED_WARNINGS_SINCE=0x70000 -DQT_DISABLE_DEPRECATED_BEFORE=0x60500 -DQT_GUI_LIB -DQT_NO_CAST_FROM_ASCII -DQT_NO_CAST_FROM_BYTEARRAY -DQT_NO_CAST_TO_ASCII -DQT_NO_DEBUG -DQT_NO_FOREACH -DQT_NO_KEYWORDS -DQT_NO_NARROWING_CONVERSIONS_IN_CONNECT -DQT_NO_URL_CAST_FROM_STRING -DQT_STRICT_ITERATORS -DQT_USE_QSTRINGBUILDER -D_GNU_SOURCE -D_LARGEFILE64_SOURCE -I/build/reproducible-path/libkexiv2-24.12.0/obj-x86_64-linux-gnu/src -I/build/reproducible-path/libkexiv2-24.12.0/src -I/build/reproducible-path/libkexiv2-24.12.0/obj-x86_64-linux-gnu/src/KExiv2_autogen/include -isystem /usr/include/x86_64-linux-gnu/qt6/QtGui -isystem /usr/include/x86_64-linux-gnu/qt6 -isystem /usr/include/x86_64-linux-gnu/qt6/QtCore -isystem /usr/lib/x86_64-linux-gnu/qt6/mkspecs/linux-g++ -g -O2 -ffil e-prefix-map=/build/reproducible-path/libkexiv2-24.12.0=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wdate-time -D_FORTIFY_SOURCE=2 -fno-operator-names -Wall -Wextra -Wcast-align -Wchar-subscripts -Wformat-security -Wno-long-long -Wpointer-arith -Wundef -Wnon-virtual-dtor -Woverloaded-virtual -Werror=return-type -Werror=init-self -Wvla -Wdate-time -Wsuggest-override -Wlogical-op -pedantic -Wzero-as-null-pointer-constant -Wmissing-include-dirs -fexceptions -std=gnu++17 -fPIC -fvisibility=hidden -fvisibility-inlines-hidden -MD -MT src/CMakeFiles/KExiv2.dir/kexiv2xmp.cpp.o -MF CMakeFiles/KExiv2.dir/kexiv2xmp.cpp.o.d -o CMakeFiles/KExiv2.dir/kexiv2xmp.cpp.o -c /build/reproducible-path/libkexiv2-24.12.0/src/kexiv2xmp.cpp [ 23%] Building CXX object src/CMakeFiles/KExiv2.dir/kexiv2previews.cpp.o cd /build/reproducible-path/libkexiv2-24.12.0/obj-x86_64-linux-gnu/src && /usr/bin/c++ -DKEXIV2_DEPRECATED_WARNINGS_SINCE=0x50100 -DKEXIV2_DISABLE_DEPRECATED_BEFORE_AND_AT=0x50100 -DKExiv2_EXPORTS -DQT_CORE_LIB -DQT_DEPRECATED_WARNINGS_SINCE=0x70000 -DQT_DISABLE_DEPRECATED_BEFORE=0x60500 -DQT_GUI_LIB -DQT_NO_CAST_FROM_ASCII -DQT_NO_CAST_FROM_BYTEARRAY -DQT_NO_CAST_TO_ASCII -DQT_NO_DEBUG -DQT_NO_FOREACH -DQT_NO_KEYWORDS -DQT_NO_NARROWING_CONVERSIONS_IN_CONNECT -DQT_NO_URL_CAST_FROM_STRING -DQT_STRICT_ITERATORS -DQT_USE_QSTRINGBUILDER -D_GNU_SOURCE -D_LARGEFILE64_SOURCE -I/build/reproducible-path/libkexiv2-24.12.0/obj-x86_64-linux-gnu/src -I/build/reproducible-path/libkexiv2-24.12.0/src -I/build/reproducible-path/libkexiv2-24.12.0/obj-x86_64-linux-gnu/src/KExiv2_autogen/include -isystem /usr/include/x86_64-linux-gnu/qt6/QtGui -isystem /usr/include/x86_64-linux-gnu/qt6 -isystem /usr/include/x86_64-linux-gnu/qt6/QtCore -isystem /usr/lib/x86_64-linux-gnu/qt6/mkspecs/linux-g++ -g -O2 -ffil e-prefix-map=/build/reproducible-path/libkexiv2-24.12.0=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wdate-time -D_FORTIFY_SOURCE=2 -fno-operator-names -Wall -Wextra -Wcast-align -Wchar-subscripts -Wformat-security -Wno-long-long -Wpointer-arith -Wundef -Wnon-virtual-dtor -Woverloaded-virtual -Werror=return-type -Werror=init-self -Wvla -Wdate-time -Wsuggest-override -Wlogical-op -pedantic -Wzero-as-null-pointer-constant -Wmissing-include-dirs -fexceptions -std=gnu++17 -fPIC -fvisibility=hidden -fvisibility-inlines-hidden -MD -MT src/CMakeFiles/KExiv2.dir/kexiv2previews.cpp.o -MF CMakeFiles/KExiv2.dir/kexiv2previews.cpp.o.d -o CMakeFiles/KExiv2.dir/kexiv2previews.cpp.o -c /build/reproducible-path/libkexiv2-24.12.0/src/kexiv2previews.cpp [ 25%] Building CXX object src/CMakeFiles/KExiv2.dir/rotationmatrix.cpp.o cd /build/reproducible-path/libkexiv2-24.12.0/obj-x86_64-linux-gnu/src && /usr/bin/c++ -DKEXIV2_DEPRECATED_WARNINGS_SINCE=0x50100 -DKEXIV2_DISABLE_DEPRECATED_BEFORE_AND_AT=0x50100 -DKExiv2_EXPORTS -DQT_CORE_LIB -DQT_DEPRECATED_WARNINGS_SINCE=0x70000 -DQT_DISABLE_DEPRECATED_BEFORE=0x60500 -DQT_GUI_LIB -DQT_NO_CAST_FROM_ASCII -DQT_NO_CAST_FROM_BYTEARRAY -DQT_NO_CAST_TO_ASCII -DQT_NO_DEBUG -DQT_NO_FOREACH -DQT_NO_KEYWORDS -DQT_NO_NARROWING_CONVERSIONS_IN_CONNECT -DQT_NO_URL_CAST_FROM_STRING -DQT_STRICT_ITERATORS -DQT_USE_QSTRINGBUILDER -D_GNU_SOURCE -D_LARGEFILE64_SOURCE -I/build/reproducible-path/libkexiv2-24.12.0/obj-x86_64-linux-gnu/src -I/build/reproducible-path/libkexiv2-24.12.0/src -I/build/reproducible-path/libkexiv2-24.12.0/obj-x86_64-linux-gnu/src/KExiv2_autogen/include -isystem /usr/include/x86_64-linux-gnu/qt6/QtGui -isystem /usr/include/x86_64-linux-gnu/qt6 -isystem /usr/include/x86_64-linux-gnu/qt6/QtCore -isystem /usr/lib/x86_64-linux-gnu/qt6/mkspecs/linux-g++ -g -O2 -ffil e-prefix-map=/build/reproducible-path/libkexiv2-24.12.0=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wdate-time -D_FORTIFY_SOURCE=2 -fno-operator-names -Wall -Wextra -Wcast-align -Wchar-subscripts -Wformat-security -Wno-long-long -Wpointer-arith -Wundef -Wnon-virtual-dtor -Woverloaded-virtual -Werror=return-type -Werror=init-self -Wvla -Wdate-time -Wsuggest-override -Wlogical-op -pedantic -Wzero-as-null-pointer-constant -Wmissing-include-dirs -fexceptions -std=gnu++17 -fPIC -fvisibility=hidden -fvisibility-inlines-hidden -MD -MT src/CMakeFiles/KExiv2.dir/rotationmatrix.cpp.o -MF CMakeFiles/KExiv2.dir/rotationmatrix.cpp.o.d -o CMakeFiles/KExiv2.dir/rotationmatrix.cpp.o -c /build/reproducible-path/libkexiv2-24.12.0/src/rotationmatrix.cpp [ 27%] Building CXX object src/CMakeFiles/KExiv2.dir/libkexiv2_debug.cpp.o cd /build/reproducible-path/libkexiv2-24.12.0/obj-x86_64-linux-gnu/src && /usr/bin/c++ -DKEXIV2_DEPRECATED_WARNINGS_SINCE=0x50100 -DKEXIV2_DISABLE_DEPRECATED_BEFORE_AND_AT=0x50100 -DKExiv2_EXPORTS -DQT_CORE_LIB -DQT_DEPRECATED_WARNINGS_SINCE=0x70000 -DQT_DISABLE_DEPRECATED_BEFORE=0x60500 -DQT_GUI_LIB -DQT_NO_CAST_FROM_ASCII -DQT_NO_CAST_FROM_BYTEARRAY -DQT_NO_CAST_TO_ASCII -DQT_NO_DEBUG -DQT_NO_FOREACH -DQT_NO_KEYWORDS -DQT_NO_NARROWING_CONVERSIONS_IN_CONNECT -DQT_NO_URL_CAST_FROM_STRING -DQT_STRICT_ITERATORS -DQT_USE_QSTRINGBUILDER -D_GNU_SOURCE -D_LARGEFILE64_SOURCE -I/build/reproducible-path/libkexiv2-24.12.0/obj-x86_64-linux-gnu/src -I/build/reproducible-path/libkexiv2-24.12.0/src -I/build/reproducible-path/libkexiv2-24.12.0/obj-x86_64-linux-gnu/src/KExiv2_autogen/include -isystem /usr/include/x86_64-linux-gnu/qt6/QtGui -isystem /usr/include/x86_64-linux-gnu/qt6 -isystem /usr/include/x86_64-linux-gnu/qt6/QtCore -isystem /usr/lib/x86_64-linux-gnu/qt6/mkspecs/linux-g++ -g -O2 -ffil e-prefix-map=/build/reproducible-path/libkexiv2-24.12.0=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wdate-time -D_FORTIFY_SOURCE=2 -fno-operator-names -Wall -Wextra -Wcast-align -Wchar-subscripts -Wformat-security -Wno-long-long -Wpointer-arith -Wundef -Wnon-virtual-dtor -Woverloaded-virtual -Werror=return-type -Werror=init-self -Wvla -Wdate-time -Wsuggest-override -Wlogical-op -pedantic -Wzero-as-null-pointer-constant -Wmissing-include-dirs -fexceptions -std=gnu++17 -fPIC -fvisibility=hidden -fvisibility-inlines-hidden -MD -MT src/CMakeFiles/KExiv2.dir/libkexiv2_debug.cpp.o -MF CMakeFiles/KExiv2.dir/libkexiv2_debug.cpp.o.d -o CMakeFiles/KExiv2.dir/libkexiv2_debug.cpp.o -c /build/reproducible-path/libkexiv2-24.12.0/obj-x86_64-linux-gnu/src/libkexiv2_debug.cpp /build/reproducible-path/libkexiv2-24.12.0/src/kexiv2xmp.cpp: In member function ‘QString KExiv2Iface::KExiv2::getXmpTagStringLangAlt(const char*, const QString&, bool) const’: /build/reproducible-path/libkexiv2-24.12.0/src/kexiv2xmp.cpp:585:35: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 585 | for (int i = 0; i < it->count(); i++) | ~~^~~~~~~~~~~~~ /build/reproducible-path/libkexiv2-24.12.0/src/kexiv2xmp.cpp: In member function ‘QStringList KExiv2Iface::KExiv2::getXmpTagStringSeq(const char*, bool) const’: /build/reproducible-path/libkexiv2-24.12.0/src/kexiv2xmp.cpp:707:35: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 707 | for (int i = 0; i < it->count(); i++) | ~~^~~~~~~~~~~~~ /build/reproducible-path/libkexiv2-24.12.0/src/kexiv2xmp.cpp: In member function ‘QStringList KExiv2Iface::KExiv2::getXmpTagStringBag(const char*, bool) const’: /build/reproducible-path/libkexiv2-24.12.0/src/kexiv2xmp.cpp:812:35: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 812 | for (int i = 0; i < it->count(); i++) | ~~^~~~~~~~~~~~~ /build/reproducible-path/libkexiv2-24.12.0/src/kexiv2xmp.cpp: In member function ‘QVariant KExiv2Iface::KExiv2::getXmpTagVariant(const char*, bool, bool) const’: /build/reproducible-path/libkexiv2-24.12.0/src/kexiv2xmp.cpp:1027:37: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 1027 | for (int i=0; i < it->count(); i++) | ~~^~~~~~~~~~~~~ /build/reproducible-path/libkexiv2-24.12.0/src/rotationmatrix.cpp: In member function ‘KExiv2Iface::RotationMatrix& KExiv2Iface::RotationMatrix::operator*=(QList<TransformationAction>)’: /build/reproducible-path/libkexiv2-24.12.0/src/rotationmatrix.cpp:175:55: warning: ‘constexpr typename std::add_const<_Tp>::type& qAsConst(T&) [with T = QList<KExiv2Iface::RotationMatrix::TransformationAction>; typename std::add_const<_Tp>::type = const QList<KExiv2Iface::RotationMatrix::TransformationAction>]’ is deprecated: Use std::as_const() instead. [-Wdeprecated-declarations] 175 | for (const TransformationAction& action : qAsConst(actions)) | ~~~~~~~~^~~~~~~~~ In file included from /usr/include/x86_64-linux-gnu/qt6/QtCore/qforeach.h:11, from /usr/include/x86_64-linux-gnu/qt6/QtCore/qglobal.h:57, from /usr/include/x86_64-linux-gnu/qt6/QtCore/qnamespace.h:12, from /usr/include/x86_64-linux-gnu/qt6/QtCore/qbytearray.h:9, from /usr/include/x86_64-linux-gnu/qt6/QtCore/QByteArray:1, from /build/reproducible-path/libkexiv2-24.12.0/src/kexiv2.h:17, from /build/reproducible-path/libkexiv2-24.12.0/src/rotationmatrix.h:14, from /build/reproducible-path/libkexiv2-24.12.0/src/rotationmatrix.cpp:10: /usr/include/x86_64-linux-gnu/qt6/QtCore/qttypetraits.h:33:45: note: declared here 33 | constexpr typename std::add_const<T>::type &qAsConst(T &t) noexcept { return t; } | ^~~~~~~~ [ 29%] Linking CXX shared library ../bin/libKExiv2Qt6.so cd /build/reproducible-path/libkexiv2-24.12.0/obj-x86_64-linux-gnu/src && /usr/bin/cmake -E cmake_link_script CMakeFiles/KExiv2.dir/link.txt --verbose=1 /usr/bin/ld: CMakeFiles/KExiv2.dir/kexiv2_p.cpp.o:(.rodata+0x100): multiple definition of `QtPrivate::IsFloatType_v<_Float16>'; CMakeFiles/KExiv2.dir/kexiv2.cpp.o:(.rodata+0x0): first defined here /usr/bin/ld: CMakeFiles/KExiv2.dir/kexiv2data.cpp.o:(.rodata+0x0): multiple definition of `QtPrivate::IsFloatType_v<_Float16>'; CMakeFiles/KExiv2.dir/kexiv2.cpp.o:(.rodata+0x0): first defined here /usr/bin/ld: CMakeFiles/KExiv2.dir/kexiv2image.cpp.o:(.rodata+0x0): multiple definition of `QtPrivate::IsFloatType_v<_Float16>'; CMakeFiles/KExiv2.dir/kexiv2.cpp.o:(.rodata+0x0): first defined here /usr/bin/ld: CMakeFiles/KExiv2.dir/kexiv2comments.cpp.o:(.rodata+0x0): multiple definition of `QtPrivate::IsFloatType_v<_Float16>'; CMakeFiles/KExiv2.dir/kexiv2.cpp.o:(.rodata+0x0): first defined here /usr/bin/ld: CMakeFiles/KExiv2.dir/kexiv2exif.cpp.o:(.rodata+0x88): multiple definition of `QtPrivate::IsFloatType_v<_Float16>'; CMakeFiles/KExiv2.dir/kexiv2.cpp.o:(.rodata+0x0): first defined here /usr/bin/ld: CMakeFiles/KExiv2.dir/kexiv2iptc.cpp.o:(.rodata+0x0): multiple definition of `QtPrivate::IsFloatType_v<_Float16>'; CMakeFiles/KExiv2.dir/kexiv2.cpp.o:(.rodata+0x0): first defined here /usr/bin/ld: CMakeFiles/KExiv2.dir/kexiv2gps.cpp.o:(.rodata+0x0): multiple definition of `QtPrivate::IsFloatType_v<_Float16>'; CMakeFiles/KExiv2.dir/kexiv2.cpp.o:(.rodata+0x0): first defined here /usr/bin/ld: CMakeFiles/KExiv2.dir/kexiv2xmp.cpp.o:(.rodata+0x28): multiple definition of `QtPrivate::IsFloatType_v<_Float16>'; CMakeFiles/KExiv2.dir/kexiv2.cpp.o:(.rodata+0x0): first defined here /usr/bin/ld: CMakeFiles/KExiv2.dir/kexiv2previews.cpp.o:(.rodata+0x0): multiple definition of `QtPrivate::IsFloatType_v<_Float16>'; CMakeFiles/KExiv2.dir/kexiv2.cpp.o:(.rodata+0x0): first defined here /usr/bin/ld: CMakeFiles/KExiv2.dir/rotationmatrix.cpp.o:(.rodata+0xc8): multiple definition of `QtPrivate::IsFloatType_v<_Float16>'; CMakeFiles/KExiv2.dir/kexiv2.cpp.o:(.rodata+0x0): first defined here /usr/bin/ld: CMakeFiles/KExiv2.dir/libkexiv2_debug.cpp.o:(.rodata+0x0): multiple definition of `QtPrivate::IsFloatType_v<_Float16>'; CMakeFiles/KExiv2.dir/kexiv2.cpp.o:(.rodata+0x0): first defined here collect2: error: ld returned 1 exit status /usr/bin/c++ -fPIC -g -O2 -ffile-prefix-map=/build/reproducible-path/libkexiv2-24.12.0=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wdate-time -D_FORTIFY_SOURCE=2 -fno-operator-names -Wall -Wextra -Wcast-align -Wchar-subscripts -Wformat-security -Wno-long-long -Wpointer-arith -Wundef -Wnon-virtual-dtor -Woverloaded-virtual -Werror=return-type -Werror=init-self -Wvla -Wdate-time -Wsuggest-override -Wlogical-op -pedantic -Wzero-as-null-pointer-constant -Wmissing-include-dirs -fexceptions -Wl,--no-undefined -Wl,--fatal-warnings -Wl,--enable-new-dtags -Wl,-z,relro -Wl,-z,now -shared -Wl,-soname,libKExiv2Qt6.so.0 -o ../bin/libKExiv2Qt6.so.5.1.0 CMakeFiles/KExiv2.dir/KExiv2_autogen/mocs_compilation.cpp.o CMakeFiles/KExiv2.dir/kexiv2.cpp.o CMakeFiles/KExiv2.dir/kexiv2_p.cpp.o CMakeFiles/KExiv2.dir/kexiv2data.cpp.o CMakeFiles/KExiv2.dir/kexiv2image.cpp.o CMakeFiles/KExiv2.dir/kexiv2comments.cpp.o CMakeFiles/KExiv2.dir/kexiv2exif.cpp.o CMakeFiles/KExiv2.dir/kexiv2iptc.cpp.o CMakeFiles/KExiv2.dir/kexiv2gps.cpp.o CMakeFiles/KExiv2.dir/kexiv2xmp.cpp.o CMakeFiles/KExiv2.dir/kexiv2previews.cpp.o CMakeFiles/KExiv2.dir/rotationmatrix.cpp.o CMakeFiles/KExiv2.dir/libkexiv2_debug.cpp.o /usr/lib/x86_64-linux-gnu/libexiv2.so /usr/lib/x86_64-linux-gnu/libQt6Gui.so.6.7.2 /usr/lib/x86_64-linux-gnu/libGLX.so /usr/lib/x86_64-linux-gnu/libOpenGL.so /usr/lib/x86_64-linux-gnu/libQt6Core.so.6.7.2 make[3]: *** [src/CMakeFiles/KExiv2.dir/build.make:304: bin/libKExiv2Qt6.so.5.1.0] Error 1 make[3]: Leaving directory '/build/reproducible-path/libkexiv2-24.12.0/obj-x86_64-linux-gnu' make[2]: *** [CMakeFiles/Makefile2:233: src/CMakeFiles/KExiv2.dir/all] Error 2 make[2]: Leaving directory '/build/reproducible-path/libkexiv2-24.12.0/obj-x86_64-linux-gnu' make[1]: *** [Makefile:149: all] Error 2 make[1]: Leaving directory '/build/reproducible-path/libkexiv2-24.12.0/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:6: binary] Error 25 dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2