Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-105819

FTBFS with ffmpeg >= 5.1

    XMLWordPrintable

Details

    • Bug
    • Resolution: Done
    • P1: Critical
    • 6.4.0 RC1, 6.5.0 Beta1
    • 6.4.0 Beta3
    • Multimedia
    • None
    • Linux/X11
    • 557c2996e0 (qt/qtmultimedia/dev) ddf562ea01 (qt/qtmultimedia/6.4) ddf562ea01 (qt/tqtc-qtmultimedia/6.4) 557c2996e0 (qt/tqtc-qtmultimedia/dev) ddf562ea01 (qt/qtmultimedia/6.4.0)

    Description

      Due to https://bugreports.qt.io/browse/QTBUG-105815, I tried building qtmultimedia with FFmpeg 5.1.

       

      Build succeeds with FFmpeg 4.

       

      The build fails with:

      [ 103s] FAILED: src/plugins/multimedia/ffmpeg/CMakeFiles/QFFmpegMediaPlugin.dir/qffmpeghwaccel.cpp.o 
      [ 103s] /usr/bin/c++ -DQFFmpegMediaPlugin_EXPORTS -DQT_COMPILING_FFMPEG -DQT_CORE_LIB -DQT_DEPRECATED_WARNINGS -DQT_DEPRECATED_WARNINGS_SINCE=0x070000 -DQT_DISABLE_DEPRECATED_BEFORE=0x050000 -DQT_GUI_LIB -DQT_MULTIMEDIA_LIB -DQT_NETWORK_LIB -DQT_NO_DEBUG -DQT_NO_EXCEPTIONS -DQT_NO_JAVA_STYLE_ITERATORS -DQT_NO_NARROWING_CONVERSIONS_IN_CONNECT -DQT_PLUGIN -D_LARGEFILE64_SOURCE -D_LARGEFILE_SOURCE -I/home/abuild/rpmbuild/BUILD/qtmultimedia-everywhere-src-6.4.0-beta3/build/src/plugins/multimedia/ffmpeg/QFFmpegMediaPlugin_autogen/include -I/home/abuild/rpmbuild/BUILD/qtmultimedia-everywhere-src-6.4.0-beta3/src/plugins/multimedia/ffmpeg -I/home/abuild/rpmbuild/BUILD/qtmultimedia-everywhere-src-6.4.0-beta3/build/src/plugins/multimedia/ffmpeg -I/home/abuild/rpmbuild/BUILD/qtmultimedia-everywhere-src-6.4.0-beta3/build/include -I/home/abuild/rpmbuild/BUILD/qtmultimedia-everywhere-src-6.4.0-beta3/build/src/multimedia -I/home/abuild/rpmbuild/BUILD/qtmultimedia-everywhere-src-6.4.0-beta3/build/include/QtMultimedia/6.4.0 -I/home/abuild/rpmbuild/BUILD/qtmultimedia-everywhere-src-6.4.0-beta3/build/include/QtMultimedia/6.4.0/QtMultimedia -I/home/abuild/rpmbuild/BUILD/qtmultimedia-everywhere-src-6.4.0-beta3/build/include/QtMultimedia -isystem /usr/include/qt6/QtCore/6.4.0 -isystem /usr/include/qt6/QtCore/6.4.0/QtCore -isystem /usr/include/qt6/QtCore -isystem /usr/include/qt6 -isystem /usr/lib64/qt6/mkspecs/linux-g++ -isystem /usr/include/qt6/QtGui/6.4.0 -isystem /usr/include/qt6/QtGui/6.4.0/QtGui -isystem /usr/include/qt6/QtGui -isystem /usr/include/libxkbcommon -isystem /usr/include/qt6/QtNetwork -isystem /usr/include/ffmpeg -O2 -Wall -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=3 -fstack-protector-strong -funwind-tables -fasynchronous-unwind-tables -fstack-clash-protection -Werror=return-type -g -g -DNDEBUG -O2 -fPIC -fvisibility=hidden -fvisibility-inlines-hidden -Wall -Wextra -fno-exceptions -Wsuggest-override -std=c++17 -MD -MT src/plugins/multimedia/ffmpeg/CMakeFiles/QFFmpegMediaPlugin.dir/qffmpeghwaccel.cpp.o -MF src/plugins/multimedia/ffmpeg/CMakeFiles/QFFmpegMediaPlugin.dir/qffmpeghwaccel.cpp.o.d -o src/plugins/multimedia/ffmpeg/CMakeFiles/QFFmpegMediaPlugin.dir/qffmpeghwaccel.cpp.o -c /home/abuild/rpmbuild/BUILD/qtmultimedia-everywhere-src-6.4.0-beta3/src/plugins/multimedia/ffmpeg/qffmpeghwaccel.cpp
      [ 103s] /home/abuild/rpmbuild/BUILD/qtmultimedia-everywhere-src-6.4.0-beta3/src/plugins/multimedia/ffmpeg/qffmpeghwaccel.cpp: In function 'AVPixelFormat QFFmpeg::getFormat(AVCodecContext*, const AVPixelFormat*)':
      [ 103s] /home/abuild/rpmbuild/BUILD/qtmultimedia-everywhere-src-6.4.0-beta3/src/plugins/multimedia/ffmpeg/qffmpeghwaccel.cpp:102:39: error: 'const struct AVCodec' has no member named 'hw_configs'
      [ 103s] 102 | if (s->hw_device_ctx && s->codec->hw_configs) {
      [ 103s] | ^~~~~~~~~~

       

      CMake log:

      [ 33s] + cmake -DCMAKE_BUILD_TYPE:STRING=RelWithDebInfo -DCMAKE_INSTALL_PREFIX:STRING=/usr -DCMAKE_MESSAGE_LOG_LEVEL:STRING=STATUS -S . -B build -GNinja -DQT_DISABLE_RPATH:BOOL=ON '-DCMAKE_C_FLAGS:STRING=-O2 -Wall -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=3 -fstack-protector-strong -funwind-tables -fasynchronous-unwind-tables -fstack-clash-protection -Werror=return-type -g' '-DCMAKE_CXX_FLAGS:STRING=-O2 -Wall -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=3 -fstack-protector-strong -funwind-tables -fasynchronous-unwind-tables -fstack-clash-protection -Werror=return-type -g' '-DCMAKE_EXE_LINKER_FLAGS:STRING=-Wl,--as-needed -Wl,--no-undefined' '-DCMAKE_MODULE_LINKER_FLAGS:STRING=-Wl,--as-needed -Wl,--no-undefined' '-DCMAKE_SHARED_LINKER_FLAGS:STRING=-Wl,--as-needed -Wl,--no-undefined' -DINPUT_ffmpeg:BOOL=ON
      [ 33s] -- The CXX compiler identification is GNU 12.1.1
      [ 34s] -- The C compiler identification is GNU 12.1.1
      [ 34s] -- Detecting CXX compiler ABI info
      [ 34s] -- Detecting CXX compiler ABI info - done
      [ 34s] -- Check for working CXX compiler: /usr/bin/c++ - skipped
      [ 34s] -- Detecting CXX compile features
      [ 34s] -- Detecting CXX compile features - done
      [ 34s] -- Detecting C compiler ABI info
      [ 34s] -- Detecting C compiler ABI info - done
      [ 34s] -- Check for working C compiler: /usr/bin/cc - skipped
      [ 34s] -- Detecting C compile features
      [ 34s] -- Detecting C compile features - done
      [ 34s] -- Performing Test CMAKE_HAVE_LIBC_PTHREAD
      [ 34s] -- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Success
      [ 34s] -- Found Threads: TRUE 
      [ 34s] -- Performing Test HAVE_STDATOMIC
      [ 34s] -- Performing Test HAVE_STDATOMIC - Success
      [ 34s] -- Found WrapAtomic: TRUE 
      [ 34s] -- Performing Test HAVE_EGL
      [ 35s] -- Performing Test HAVE_EGL - Success
      [ 35s] -- Found EGL: /usr/include (found version "1.5") 
      [ 35s] -- Performing Test HAVE_GLESv2
      [ 35s] -- Performing Test HAVE_GLESv2 - Success
      [ 35s] -- CMAKE_BUILD_TYPE was set to: 'RelWithDebInfo'
      [ 35s] -- Check for feature set changes
      [ 35s] -- CMAKE_STRIP (original): /usr/bin/strip
      [ 35s] -- Performing Test strip --keep-section
      [ 35s] -- Performing Test strip --keep-section - TRUE
      [ 35s] -- CMAKE_STRIP (used by Qt): /home/abuild/rpmbuild/BUILD/qtmultimedia-everywhere-src-6.4.0-beta3/build/lib/qt6/libexec/qt-internal-strip
      [ 35s] -- Using installed syncqt found at: /usr/lib/qt6/libexec/syncqt.pl
      [ 35s] -- Running syncqt for module: 'QtMultimedia' 
      [ 35s] -- Could NOT find ALSA (missing: ALSA_LIBRARY ALSA_INCLUDE_DIR) 
      [ 35s] -- Could NOT find AVFoundation (missing: AVFoundation_LIBRARY) 
      [ 36s] -- Found GLIB2: /usr/lib/libglib-2.0.so 
      [ 36s] -- Checking for module 'gobject-2.0'
      [ 36s] -- Found gobject-2.0, version 2.72.3
      [ 36s] -- Checking for module 'gstreamer-1.0'
      [ 36s] -- Package 'gstreamer-1.0', required by 'virtual:world', not found
      [ 36s] -- Checking for module 'gstreamer-base-1.0'
      [ 36s] -- Package 'gstreamer-base-1.0', required by 'virtual:world', not found
      [ 36s] -- Checking for module 'gstreamer-audio-1.0'
      [ 36s] -- Package 'gstreamer-audio-1.0', required by 'virtual:world', not found
      [ 36s] -- Checking for module 'gstreamer-video-1.0'
      [ 36s] -- Package 'gstreamer-video-1.0', required by 'virtual:world', not found
      [ 36s] -- Checking for module 'gstreamer-pbutils-1.0'
      [ 36s] -- Package 'gstreamer-pbutils-1.0', required by 'virtual:world', not found
      [ 36s] -- Checking for module 'gstreamer-allocators-1.0'
      [ 36s] -- Package 'gstreamer-allocators-1.0', required by 'virtual:world', not found
      [ 36s] -- Could NOT find GStreamer (missing: GStreamer_Core_FOUND GStreamer_Base_FOUND GStreamer_Audio_FOUND GStreamer_Video_FOUND GStreamer_Pbutils_FOUND GStreamer_Allocators_FOUND) 
      [ 36s] -- Found GLIB2: /usr/lib/libglib-2.0.so 
      [ 36s] -- Checking for module 'gstreamer-1.0'
      [ 36s] -- Package 'gstreamer-1.0', required by 'virtual:world', not found
      [ 36s] -- Checking for module 'gstreamer-base-1.0'
      [ 36s] -- Package 'gstreamer-base-1.0', required by 'virtual:world', not found
      [ 36s] -- Checking for module 'gstreamer-audio-1.0'
      [ 36s] -- Package 'gstreamer-audio-1.0', required by 'virtual:world', not found
      [ 36s] -- Checking for module 'gstreamer-video-1.0'
      [ 36s] -- Package 'gstreamer-video-1.0', required by 'virtual:world', not found
      [ 36s] -- Checking for module 'gstreamer-pbutils-1.0'
      [ 36s] -- Package 'gstreamer-pbutils-1.0', required by 'virtual:world', not found
      [ 36s] -- Checking for module 'gstreamer-allocators-1.0'
      [ 36s] -- Package 'gstreamer-allocators-1.0', required by 'virtual:world', not found
      [ 36s] -- Checking for module 'gstreamer-app-1.0'
      [ 36s] -- Package 'gstreamer-app-1.0', required by 'virtual:world', not found
      [ 36s] -- Could NOT find GStreamer (missing: GStreamer_Core_FOUND GStreamer_Base_FOUND GStreamer_Audio_FOUND GStreamer_Video_FOUND GStreamer_Pbutils_FOUND GStreamer_Allocators_FOUND App) 
      [ 36s] -- Found GLIB2: /usr/lib/libglib-2.0.so 
      [ 36s] -- Checking for module 'gstreamer-1.0'
      [ 36s] -- Package 'gstreamer-1.0', required by 'virtual:world', not found
      [ 36s] -- Checking for module 'gstreamer-base-1.0'
      [ 36s] -- Package 'gstreamer-base-1.0', required by 'virtual:world', not found
      [ 36s] -- Checking for module 'gstreamer-audio-1.0'
      [ 36s] -- Package 'gstreamer-audio-1.0', required by 'virtual:world', not found
      [ 36s] -- Checking for module 'gstreamer-video-1.0'
      [ 36s] -- Package 'gstreamer-video-1.0', required by 'virtual:world', not found
      [ 36s] -- Checking for module 'gstreamer-pbutils-1.0'
      [ 36s] -- Package 'gstreamer-pbutils-1.0', required by 'virtual:world', not found
      [ 36s] -- Checking for module 'gstreamer-allocators-1.0'
      [ 36s] -- Package 'gstreamer-allocators-1.0', required by 'virtual:world', not found
      [ 36s] -- Checking for module 'gstreamer-photography-1.0'
      [ 36s] -- Package 'gstreamer-photography-1.0', required by 'virtual:world', not found
      [ 36s] -- Could NOT find GStreamer (missing: GStreamer_Core_FOUND GStreamer_Base_FOUND GStreamer_Audio_FOUND GStreamer_Video_FOUND GStreamer_Pbutils_FOUND GStreamer_Allocators_FOUND) 
      [ 36s] -- Found GLIB2: /usr/lib/libglib-2.0.so 
      [ 36s] -- Checking for module 'gstreamer-1.0'
      [ 36s] -- Package 'gstreamer-1.0', required by 'virtual:world', not found
      [ 36s] -- Checking for module 'gstreamer-base-1.0'
      [ 36s] -- Package 'gstreamer-base-1.0', required by 'virtual:world', not found
      [ 36s] -- Checking for module 'gstreamer-audio-1.0'
      [ 36s] -- Package 'gstreamer-audio-1.0', required by 'virtual:world', not found
      [ 36s] -- Checking for module 'gstreamer-video-1.0'
      [ 36s] -- Package 'gstreamer-video-1.0', required by 'virtual:world', not found
      [ 36s] -- Checking for module 'gstreamer-pbutils-1.0'
      [ 36s] -- Package 'gstreamer-pbutils-1.0', required by 'virtual:world', not found
      [ 36s] -- Checking for module 'gstreamer-allocators-1.0'
      [ 36s] -- Package 'gstreamer-allocators-1.0', required by 'virtual:world', not found
      [ 36s] -- Checking for module 'gstreamer-gl-1.0'
      [ 36s] -- Package 'gstreamer-gl-1.0', required by 'virtual:world', not found
      [ 36s] -- Could NOT find GStreamer (missing: GStreamer_Core_FOUND GStreamer_Base_FOUND GStreamer_Audio_FOUND GStreamer_Video_FOUND GStreamer_Pbutils_FOUND GStreamer_Allocators_FOUND) 
      [ 36s] -- Could NOT find MMRendererCore (missing: MMRendererCore_LIBRARY) 
      [ 36s] -- Could NOT find MMRenderer (missing: MMRenderer_LIBRARY) 
      [ 36s] -- Found WrapPulseAudio: /usr/lib/libpulse.so 
      [ 36s] -- Could NOT find WMF (missing: WMF_STRMIIDS_LIBRARY WMF_AMSTRMID_LIBRARY WMF_DMOGUIDS_LIBRARY WMF_UUID_LIBRARY WMF_MSDMO_LIBRARY WMF_OLE32_LIBRARY WMF_OLEAUT32_LIBRARY WMF_MF_LIBRARY WMF_MFUUID_LIBRARY WMF_MFPLAT_LIBRARY WMF_MFCORE_LIBRARY WMF_PROPSYS_LIBRARY) 
      [ 36s] -- Checking for module 'libavcodec'
      [ 37s] -- Found libavcodec, version 59.37.100
      [ 37s] -- Checking for module 'libavformat'
      [ 37s] -- Found libavformat, version 59.27.100
      [ 37s] -- Checking for module 'libavdevice'
      [ 37s] -- Found libavdevice, version 59.7.100
      [ 37s] -- Checking for module 'libavutil'
      [ 37s] -- Found libavutil, version 57.28.100
      [ 37s] -- Checking for module 'libavfilter'
      [ 37s] -- Found libavfilter, version 8.44.100
      [ 37s] -- Checking for module 'libswscale'
      [ 37s] -- Found libswscale, version 6.7.100
      [ 37s] -- Checking for module 'libpostproc'
      [ 37s] -- Found libpostproc, version 56.6.100
      [ 37s] -- Checking for module 'libswresample'
      [ 37s] -- Found libswresample, version 4.7.100
      [ 37s] -- Found FFmpeg: /usr/lib/libavcodec.so;libavcodec.so;/usr/lib/libavformat.so;libavformat.so;/usr/lib/libavutil.so;libavutil.so;/usr/lib/libavdevice.so;libavdevice.so;/usr/lib/libswresample.so;libswresample.so;/usr/lib/libswscale.so;libswscale.so found components: AVCODEC AVFORMAT AVUTIL AVDEVICE SWRESAMPLE SWSCALE 
      [ 37s] -- Checking for module 'libva'
      [ 37s] -- Found libva, version 1.15.0
      [ 37s] -- Checking for module 'libva-drm'
      [ 37s] -- Found libva-drm, version 1.15.0
      [ 37s] -- Found VAAPI: TRUE found components: VA DRM 
      [ 37s] -- Performing Test evr.h
      [ 37s] -- Performing Test evr.h - Failed
      [ 37s] -- Performing Test Vivante GPU
      [ 38s] -- Performing Test Vivante GPU - Failed
      [ 38s] -- Performing Test Video for Linux
      [ 38s] -- Performing Test Video for Linux - Success
      [ 38s] -- Performing Test wmsdk.h
      [ 38s] -- Performing Test wmsdk.h - Failed
      [ 38s] -- Performing Test HAVE_linux_dmabuf
      [ 38s] -- Performing Test HAVE_linux_dmabuf - Success
      [ 38s] -- Performing Test HAVE_DASH_UNDEFINED_SYMBOLS
      [ 38s] -- Performing Test HAVE_DASH_UNDEFINED_SYMBOLS - Success
      [ 38s] -- Performing Test HAVE_DASH_DASH_NO_UNDEFINED
      [ 38s] -- Performing Test HAVE_DASH_DASH_NO_UNDEFINED - Success
      [ 38s] -- Running syncqt for module: 'QtSpatialAudio' 
      [ 38s] -- Running syncqt for module: 'QtMultimediaQuick' 
      [ 38s] -- Running syncqt for module: 'QtMultimediaWidgets' 
      [ 39s] -- Generated QtModulePlugins.cmake files for the following modules: Multimedia
      [ 39s] -- The following packages have been found:
      [ 39s] 
      [ 39s] * Qt6BuildInternals (required version >= 6.4.0)
      [ 39s] * Qt6CoreTools (required version >= 6.4.0)
      [ 39s] * Qt6Core (required version >= 6.4.0)
      [ 39s] * XKB (required version >= 0.5.0), XKB API common to servers and clients., <http://xkbcommon.org>
      [ 39s] * Vulkan
      [ 39s] * Qt6GuiTools (required version >= 6.4.0)
      [ 39s] * Qt6DBusTools (required version >= 6.4.0)
      [ 39s] * Qt6Gui (required version >= 6.4.0)
      [ 39s] * Qt6Network (required version >= 6.4.0)
      [ 39s] * Qt6Svg (required version >= 6.4.0)
      [ 39s] * Qt6WidgetsTools (required version >= 6.4.0)
      [ 39s] * Qt6Widgets (required version >= 6.4.0)
      [ 39s] * Qt6QmlTools (required version >= 6.4.0)
      [ 39s] * WrapVulkanHeaders
      [ 39s] * Qt6Quick (required version >= 6.4.0)
      [ 39s] * Qt6QuickTest (required version >= 6.4.0)
      [ 39s] * Qt6QuickControls2 (required version >= 6.4.0)
      [ 39s] * Qt6ShaderToolsTools (required version >= 6.4.0)
      [ 39s] * Qt6ShaderTools
      [ 39s] * Qt6
      [ 39s] * PulseAudio
      [ 39s] * WrapPulseAudio
      [ 39s] * FFmpeg
      [ 39s] * EGL, A platform-agnostic mechanism for creating rendering surfaces for use with other graphics libraries, such as OpenGL|ES and OpenVG., <https://www.khronos.org/egl/>
      [ 39s] * PkgConfig
      [ 39s] * VAAPI
      [ 39s] 
      [ 39s] -- The following OPTIONAL packages have not been found:
      [ 39s] 
      [ 39s] * Qt6QmlCompilerPlusPrivate
      [ 39s] * Qt6Quick3D (required version >= 6.4.0)
      [ 39s] * ALSA
      [ 39s] * AVFoundation
      [ 39s] * GStreamer
      [ 39s] * MMRendererCore
      [ 39s] * MMRenderer
      [ 39s] * WMF
      [ 39s] 
      [ 39s] 
      [ 39s] -- Configuration summary shown below. It has also been written to /home/abuild/rpmbuild/BUILD/qtmultimedia-everywhere-src-6.4.0-beta3/build/config.summary
      [ 39s] -- Configure with --log-level=STATUS or higher to increase CMake's message verbosity. The log level does not persist across reconfigurations.
      [ 39s] 
      [ 39s] -- Configure summary:
      [ 39s] 
      [ 39s] Qt Multimedia:
      [ 39s] Spatial Audio .......................... yes
      [ 39s] Spatial Audio (Quick3D) ................ no
      [ 39s] Low level Audio Backend:
      [ 39s] ALSA (experimental) .................. no
      [ 39s] PulseAudio ........................... yes
      [ 39s] MMRenderer ........................... no
      [ 39s] CoreAudio ............................ no
      [ 39s] Windows Media SDK .................... no
      [ 39s] Open SLES (Android) .................. no
      [ 39s] Web Assembly ......................... no
      [ 39s] Plugin:
      [ 39s] GStreamer 1.0 ........................ no
      [ 39s] FFmpeg ............................... yes
      [ 39s] MMRenderer ........................... no
      [ 39s] AVFoundation ......................... no
      [ 39s] Windows Media Foundation ............. no
      [ 39s] Hardware acceleration and features:
      [ 39s] Video for Linux ...................... yes
      [ 39s] VAAPI support ........................ yes
      [ 39s] Linux DMA buffer support ............. yes
      [ 39s] VideoToolbox ......................... no

       

      Attachments

        No reviews matched the request. Check your Options in the drop-down menu of this sections header.

        Activity

          People

            piotr Piotr Srebrny (Inactive)
            cgiboudeaux Christophe Marin
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews

                There are no open Gerrit changes