Bug#1096629: ffmpegthumbs: ftbfs with GCC-15
Package: src:ffmpegthumbs
Version: 4:24.12.1-1
Severity: important
Tags: sid forky
User: debian-gcc@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/ffmpegthumbs_24.12.1-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/ffmpegthumbs-24.12.1/ffmpegthumbnailer/moviedecoder.cpp:274:70: warning: ‘AVStream::side_data’ is deprecated [-Wdeprecated-declarations]
274 | int32_t *matrix = reinterpret_cast<int32_t*>(m_pVideoStream->side_data[i].data);
| ^~~~~~~~~
/usr/include/x86_64-linux-gnu/libavformat/avformat.h:871:23: note: declared here
871 | AVPacketSideData *side_data;
| ^~~~~~~~~
/build/reproducible-path/ffmpegthumbs-24.12.1/ffmpegthumbnailer/moviedecoder.cpp:274:70: warning: ‘AVStream::side_data’ is deprecated [-Wdeprecated-declarations]
274 | int32_t *matrix = reinterpret_cast<int32_t*>(m_pVideoStream->side_data[i].data);
| ^~~~~~~~~
/usr/include/x86_64-linux-gnu/libavformat/avformat.h:871:23: note: declared here
871 | AVPacketSideData *side_data;
| ^~~~~~~~~
/build/reproducible-path/ffmpegthumbs-24.12.1/ffmpegthumbnailer/moviedecoder.cpp:274:70: warning: ‘AVStream::side_data’ is deprecated [-Wdeprecated-declarations]
274 | int32_t *matrix = reinterpret_cast<int32_t*>(m_pVideoStream->side_data[i].data);
| ^~~~~~~~~
/usr/include/x86_64-linux-gnu/libavformat/avformat.h:871:23: note: declared here
871 | AVPacketSideData *side_data;
| ^~~~~~~~~
/build/reproducible-path/ffmpegthumbs-24.12.1/ffmpegthumbnailer/moviedecoder.cpp: In member function ‘void ffmpegthumbnailer::MovieDecoder::getScaledVideoFrame(int, bool, ffmpegthumbnailer::VideoFrame&)’:
/build/reproducible-path/ffmpegthumbs-24.12.1/ffmpegthumbnailer/moviedecoder.cpp:407:19: warning: ‘AVFrame::interlaced_frame’ is deprecated [-Wdeprecated-declarations]
407 | if (m_pFrame->interlaced_frame) {
| ^~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/libavutil/frame.h:566:9: note: declared here
566 | int interlaced_frame;
| ^~~~~~~~~~~~~~~~
/build/reproducible-path/ffmpegthumbs-24.12.1/ffmpegthumbnailer/moviedecoder.cpp:407:19: warning: ‘AVFrame::interlaced_frame’ is deprecated [-Wdeprecated-declarations]
407 | if (m_pFrame->interlaced_frame) {
| ^~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/libavutil/frame.h:566:9: note: declared here
566 | int interlaced_frame;
| ^~~~~~~~~~~~~~~~
/build/reproducible-path/ffmpegthumbs-24.12.1/ffmpegthumbnailer/moviedecoder.cpp:407:19: warning: ‘AVFrame::interlaced_frame’ is deprecated [-Wdeprecated-declarations]
407 | if (m_pFrame->interlaced_frame) {
| ^~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/libavutil/frame.h:566:9: note: declared here
566 | int interlaced_frame;
| ^~~~~~~~~~~~~~~~
[ 88%] Linking CXX shared module bin/kf6/thumbcreator/ffmpegthumbs.so
/usr/bin/cmake -E cmake_link_script CMakeFiles/ffmpegthumbs.dir/link.txt --verbose=1
/usr/bin/ld: CMakeFiles/ffmpegthumbs.dir/ffmpegthumbnailer/moviedecoder.cpp.o:(.rodata+0x0): multiple definition of `QtPrivate::IsFloatType_v<_Float16>'; CMakeFiles/ffmpegthumbs.dir/ffmpegthumbnailer.cpp.o:(.rodata+0xc0): first defined here
/usr/bin/ld: CMakeFiles/ffmpegthumbs.dir/ffmpegthumbnailer/imagewriter.cpp.o:(.rodata+0x0): multiple definition of `QtPrivate::IsFloatType_v<_Float16>'; CMakeFiles/ffmpegthumbs.dir/ffmpegthumbnailer.cpp.o:(.rodata+0xc0): first defined here
/usr/bin/ld: CMakeFiles/ffmpegthumbs.dir/ffmpegthumbnailer/videothumbnailer.cpp.o:(.rodata+0x0): multiple definition of `QtPrivate::IsFloatType_v<_Float16>'; CMakeFiles/ffmpegthumbs.dir/ffmpegthumbnailer.cpp.o:(.rodata+0xc0): first defined here
/usr/bin/ld: CMakeFiles/ffmpegthumbs.dir/ffmpegthumbs_debug.cpp.o:(.rodata+0x0): multiple definition of `QtPrivate::IsFloatType_v<_Float16>'; CMakeFiles/ffmpegthumbs.dir/ffmpegthumbnailer.cpp.o:(.rodata+0xc0): first defined here
/usr/bin/ld: CMakeFiles/ffmpegthumbs.dir/ffmpegthumbnailersettings5.cpp.o:(.rodata+0x0): multiple definition of `QtPrivate::IsFloatType_v<_Float16>'; CMakeFiles/ffmpegthumbs.dir/ffmpegthumbnailer.cpp.o:(.rodata+0xc0): first defined here
collect2: error: ld returned 1 exit status
/usr/bin/c++ -fPIC -g -O2 -ffile-prefix-map=/build/reproducible-path/ffmpegthumbs-24.12.1=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wdate-time -D_FORTIFY_SOURCE=2 -fno-operator-names -fno-exceptions -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 -Werror=undef -Wvla -Wdate-time -Wsuggest-override -Wlogical-op -pedantic -Wzero-as-null-pointer-constant -Wmissing-include-dirs -D __STDC_CONSTANT_MACROS -Wl,--no-undefined -Wl,--fatal-warnings -Wl,--enable-new-dtags -Wl,-z,relro -Wl,-z,now -shared -o bin/kf6/thumbcreator/ffmpegthumbs.so CMakeFiles/ffmpegthumbs.dir/ffmpegthumbs_autogen/mocs_compilation.cpp.o CMakeFiles/ffmpegthumbs.dir/ffmpegthumbnailer.cpp.o CMakeFiles/ffmpegthumbs.dir/ffmpegthumbnailer/filmstripfilter.cpp.o CMakeFiles/ffmpegthumbs.dir/ffmpegthumbnailer/moviedecoder.cpp.o CMakeFiles/
ffmpegthumbs.dir/ffmpegthumbnailer/imagewriter.cpp.o CMakeFiles/ffmpegthumbs.dir/ffmpegthumbnailer/videothumbnailer.cpp.o CMakeFiles/ffmpegthumbs.dir/ffmpegthumbs_debug.cpp.o CMakeFiles/ffmpegthumbs.dir/ffmpegthumbnailersettings5.cpp.o /usr/lib/x86_64-linux-gnu/libKF6KIOWidgets.so.6.10.0 /usr/lib/x86_64-linux-gnu/libavutil.so /usr/lib/x86_64-linux-gnu/libavfilter.so /usr/lib/x86_64-linux-gnu/libavformat.so /usr/lib/x86_64-linux-gnu/libavcodec.so /usr/lib/x86_64-linux-gnu/libswscale.so /usr/lib/x86_64-linux-gnu/libKF6KIOGui.so.6.10.0 /usr/lib/x86_64-linux-gnu/libKF6KIOCore.so.6.10.0 /usr/lib/x86_64-linux-gnu/libKF6JobWidgets.so.6.10.0 /usr/lib/x86_64-linux-gnu/libKF6Service.so.6.10.0 /usr/lib/x86_64-linux-gnu/libKF6CoreAddons.so.6.10.0 /usr/lib/x86_64-linux-gnu/libKF6Solid.so.6.10.0 /usr/lib/x86_64-linux-gnu/libQt6Network.so.6.7.2 /usr/lib/x86_64-linux-gnu/libKF6Completion.so.6.10.0 /usr/lib/x86_64-linux-gnu/libKF6ConfigGui.so.6.10.0 /usr/lib/x86_64-linux-gnu/libKF6ConfigCore.so.6.1
0.0 /usr/lib/x86_64-linux-gnu/libKF6WidgetsAddons.so.6.10.0 /usr/lib/x86_64-linux-gnu/libQt6Widgets.so.6.7.2 /usr/lib/x86_64-linux-gnu/libQt6Gui.so.6.7.2 /usr/lib/x86_64-linux-gnu/libQt6DBus.so.6.7.2 /usr/lib/x86_64-linux-gnu/libQt6Core.so.6.7.2 /usr/lib/x86_64-linux-gnu/libGLX.so /usr/lib/x86_64-linux-gnu/libOpenGL.so
make[3]: *** [CMakeFiles/ffmpegthumbs.dir/build.make:237: bin/kf6/thumbcreator/ffmpegthumbs.so] Error 1
make[3]: Leaving directory '/build/reproducible-path/ffmpegthumbs-24.12.1/obj-x86_64-linux-gnu'
make[2]: *** [CMakeFiles/Makefile2:546: CMakeFiles/ffmpegthumbs.dir/all] Error 2
make[2]: *** Waiting for unfinished jobs....
[ 92%] Linking CXX executable ../bin/ffmpegthumbtest
cd /build/reproducible-path/ffmpegthumbs-24.12.1/obj-x86_64-linux-gnu/tests && /usr/bin/cmake -E cmake_link_script CMakeFiles/ffmpegthumbtest.dir/link.txt --verbose=1
/usr/bin/ld: CMakeFiles/ffmpegthumbtest.dir/__/ffmpegthumbnailer.cpp.o:(.rodata+0xc4): multiple definition of `QtPrivate::IsFloatType_v<_Float16>'; CMakeFiles/ffmpegthumbtest.dir/ffmpegthumbtest.cpp.o:(.rodata+0x0): first defined here
/usr/bin/ld: CMakeFiles/ffmpegthumbtest.dir/__/ffmpegthumbnailer/moviedecoder.cpp.o:(.rodata+0x0): multiple definition of `QtPrivate::IsFloatType_v<_Float16>'; CMakeFiles/ffmpegthumbtest.dir/ffmpegthumbtest.cpp.o:(.rodata+0x0): first defined here
/usr/bin/ld: CMakeFiles/ffmpegthumbtest.dir/__/ffmpegthumbnailer/imagewriter.cpp.o:(.rodata+0x0): multiple definition of `QtPrivate::IsFloatType_v<_Float16>'; CMakeFiles/ffmpegthumbtest.dir/ffmpegthumbtest.cpp.o:(.rodata+0x0): first defined here
/usr/bin/ld: CMakeFiles/ffmpegthumbtest.dir/__/ffmpegthumbnailer/videothumbnailer.cpp.o:(.rodata+0x0): multiple definition of `QtPrivate::IsFloatType_v<_Float16>'; CMakeFiles/ffmpegthumbtest.dir/ffmpegthumbtest.cpp.o:(.rodata+0x0): first defined here
/usr/bin/ld: CMakeFiles/ffmpegthumbtest.dir/ffmpegthumbs_debug.cpp.o:(.rodata+0x0): multiple definition of `QtPrivate::IsFloatType_v<_Float16>'; CMakeFiles/ffmpegthumbtest.dir/ffmpegthumbtest.cpp.o:(.rodata+0x0): first defined here
/usr/bin/ld: CMakeFiles/ffmpegthumbtest.dir/ffmpegthumbnailersettings5.cpp.o:(.rodata+0x0): multiple definition of `QtPrivate::IsFloatType_v<_Float16>'; CMakeFiles/ffmpegthumbtest.dir/ffmpegthumbtest.cpp.o:(.rodata+0x0): first defined here
collect2: error: ld returned 1 exit status
/usr/bin/c++ -g -O2 -ffile-prefix-map=/build/reproducible-path/ffmpegthumbs-24.12.1=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wdate-time -D_FORTIFY_SOURCE=2 -fno-operator-names -fno-exceptions -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 -Werror=undef -Wvla -Wdate-time -Wsuggest-override -Wlogical-op -pedantic -Wzero-as-null-pointer-constant -Wmissing-include-dirs -D __STDC_CONSTANT_MACROS -Wl,--enable-new-dtags -Wl,-z,relro -Wl,-z,now CMakeFiles/ffmpegthumbtest.dir/ffmpegthumbtest_autogen/mocs_compilation.cpp.o CMakeFiles/ffmpegthumbtest.dir/ffmpegthumbtest.cpp.o CMakeFiles/ffmpegthumbtest.dir/__/ffmpegthumbnailer.cpp.o CMakeFiles/ffmpegthumbtest.dir/__/ffmpegthumbnailer/filmstripfilter.cpp.o CMakeFiles/ffmpegthumbtest.dir/__/ffmpegthumbnailer/moviedecoder.cpp.o CMakeFiles/ffmpegthumbtest.di
r/__/ffmpegthumbnailer/imagewriter.cpp.o CMakeFiles/ffmpegthumbtest.dir/__/ffmpegthumbnailer/videothumbnailer.cpp.o CMakeFiles/ffmpegthumbtest.dir/ffmpegthumbs_debug.cpp.o CMakeFiles/ffmpegthumbtest.dir/ffmpegthumbnailersettings5.cpp.o -o ../bin/ffmpegthumbtest /usr/lib/x86_64-linux-gnu/libKF6KIOWidgets.so.6.10.0 /usr/lib/x86_64-linux-gnu/libavutil.so /usr/lib/x86_64-linux-gnu/libavfilter.so /usr/lib/x86_64-linux-gnu/libavformat.so /usr/lib/x86_64-linux-gnu/libavcodec.so /usr/lib/x86_64-linux-gnu/libswscale.so /usr/lib/x86_64-linux-gnu/libKF6KIOGui.so.6.10.0 /usr/lib/x86_64-linux-gnu/libKF6KIOCore.so.6.10.0 /usr/lib/x86_64-linux-gnu/libKF6JobWidgets.so.6.10.0 /usr/lib/x86_64-linux-gnu/libKF6Service.so.6.10.0 /usr/lib/x86_64-linux-gnu/libKF6CoreAddons.so.6.10.0 /usr/lib/x86_64-linux-gnu/libKF6Solid.so.6.10.0 /usr/lib/x86_64-linux-gnu/libQt6Network.so.6.7.2 /usr/lib/x86_64-linux-gnu/libKF6Completion.so.6.10.0 /usr/lib/x86_64-linux-gnu/libKF6ConfigGui.so.6.10.0 /usr/lib/x86_64-linux-g
nu/libKF6ConfigCore.so.6.10.0 /usr/lib/x86_64-linux-gnu/libKF6WidgetsAddons.so.6.10.0 /usr/lib/x86_64-linux-gnu/libQt6Widgets.so.6.7.2 /usr/lib/x86_64-linux-gnu/libQt6Gui.so.6.7.2 /usr/lib/x86_64-linux-gnu/libQt6DBus.so.6.7.2 /usr/lib/x86_64-linux-gnu/libQt6Core.so.6.7.2 /usr/lib/x86_64-linux-gnu/libGLX.so /usr/lib/x86_64-linux-gnu/libOpenGL.so
make[3]: *** [tests/CMakeFiles/ffmpegthumbtest.dir/build.make:253: bin/ffmpegthumbtest] Error 1
make[3]: Leaving directory '/build/reproducible-path/ffmpegthumbs-24.12.1/obj-x86_64-linux-gnu'
make[2]: *** [CMakeFiles/Makefile2:643: tests/CMakeFiles/ffmpegthumbtest.dir/all] Error 2
make[2]: Leaving directory '/build/reproducible-path/ffmpegthumbs-24.12.1/obj-x86_64-linux-gnu'
make[1]: *** [Makefile:149: all] Error 2
make[1]: Leaving directory '/build/reproducible-path/ffmpegthumbs-24.12.1/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:8: binary] Error 25
dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2
Reply to: