Bug#1004806: dolphin-emu: FTBFS with ffmpeg 5.0

Sebastian Ramacher sramacher at debian.org
Tue Feb 1 22:01:50 GMT 2022


Source: dolphin-emu
Version: 5.0+dfsg-6
Severity: important
X-Debbugs-Cc: sramacher at debian.org
Usertags: ffmpeg5.0
Tags: sid bookworm ftbfs

dolphin-emu FTBFS with ffmpeg 5.0 in experimental:

[ 43%] Building CXX object Source/Core/VideoCommon/CMakeFiles/videocommon.dir/AVIDump.cpp.o
cd /<<PKGBUILDDIR>>/build/Source/Core/VideoCommon && /usr/lib/ccache/c++ -DDATA_DIR=\"/usr/share/games/dolphin-emu/\" -DHAVE_ALSA=1 -DHAVE_AO=1 -DHAVE_BLUEZ=1 -DHAVE_LIBAV -DHAVE_LIBEVDEV=1 -DHAVE_LIBUDEV=1 -DHAVE_OPENAL=1 -DHAVE_PORTAUDIO=1 -DHAVE_PULSEAUDIO=1 -DHAVE_WX=1 -DHAVE_X11=1 -DHAVE_X11_XINPUT2=1 -DHAVE_XRANDR=1 -DUSE_ANALYTICS=1 -DUSE_MEMORYWATCHER=1 -DUSE_PIPES=1 -DUSE_UPNP -DWXUSINGDLL -D_ARCH_64=1 -D_DEFAULT_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_M_X86=1 -D_M_X86_64=1 -D__LIBUSB__ -D__STDC_CONSTANT_MACROS -D__STDC_LIMIT_MACROS -D__WXGTK__ -I/usr/include/AL -I/usr/include/libevdev-1.0 -I/<<PKGBUILDDIR>>/Source/Core -I/<<PKGBUILDDIR>>/Externals/Bochs_disasm -I/<<PKGBUILDDIR>>/Externals/xxhash -I/usr/include/libpng16 -I/usr/include/soundtouch -I/usr/include/libusb-1.0 -I/usr/include/miniupnpc -I/usr/include/gtk-3.0 -I/usr/include/at-spi2-atk/2.0 -I/usr/include/at-spi-2.0 -I/usr/include/dbus-1.0 -I/usr/lib/x86_64-linux-gnu/dbus-1.0/include -I/usr/include/gio-unix-2.0 -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/fribidi -I/usr/include/atk-1.0 -I/usr/include/pixman-1 -I/usr/include/uuid -I/usr/include/freetype2 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libmount -I/usr/include/blkid -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I/<<PKGBUILDDIR>>/build/Source/Core/Common -I/usr/src/gtest -I/usr/src/gtest/include -isystem /usr/lib/x86_64-linux-gnu/wx/include/gtk3-unicode-3.0 -isystem /usr/include/wx-3.0 -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -specs=/usr/share/dpkg/no-pie-compile.specs -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -Wtype-limits -Wsign-compare -Wignored-qualifiers -Wuninitialized -Wlogical-op -Wshadow -Winit-self -Wmissing-declarations -fvisibility-inlines-hidden -fvisibility=hidden -pthread   -msse2 -Wall -fno-strict-aliasing -fno-exceptions -std=c++1y -include '/<<PKGBUILDDIR>>/build/Source/CMakeFiles/pch.dir/pch.h' -MD -MT Source/Core/VideoCommon/CMakeFiles/videocommon.dir/AVIDump.cpp.o -MF CMakeFiles/videocommon.dir/AVIDump.cpp.o.d -o CMakeFiles/videocommon.dir/AVIDump.cpp.o -c /<<PKGBUILDDIR>>/Source/Core/VideoCommon/AVIDump.cpp
/<<PKGBUILDDIR>>/Source/Core/VideoCommon/VideoState.cpp: In function ‘void VideoCommon_Init()’:
/<<PKGBUILDDIR>>/Source/Core/VideoCommon/VideoState.cpp:71:15: warning: ‘void* memset(void*, int, size_t)’ clearing an object of non-trivial type ‘struct CPState’; use assignment or value-initialization instead [-Wclass-memaccess]
   71 |         memset(&g_main_cp_state, 0, sizeof(g_main_cp_state));
      |         ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /<<PKGBUILDDIR>>/Source/Core/VideoCommon/VideoState.cpp:11:
/<<PKGBUILDDIR>>/Source/Core/VideoCommon/CPMemory.h:246:8: note: ‘struct CPState’ declared here
  246 | struct CPState final
      |        ^~~~~~~
/<<PKGBUILDDIR>>/Source/Core/VideoCommon/VideoState.cpp:72:15: warning: ‘void* memset(void*, int, size_t)’ clearing an object of non-trivial type ‘struct CPState’; use assignment or value-initialization instead [-Wclass-memaccess]
   72 |         memset(&g_preprocess_cp_state, 0, sizeof(g_preprocess_cp_state));
      |         ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /<<PKGBUILDDIR>>/Source/Core/VideoCommon/VideoState.cpp:11:
/<<PKGBUILDDIR>>/Source/Core/VideoCommon/CPMemory.h:246:8: note: ‘struct CPState’ declared here
  246 | struct CPState final
      |        ^~~~~~~
/<<PKGBUILDDIR>>/Source/Core/VideoCommon/AVIDump.cpp: In function ‘void InitAVCodec()’:
/<<PKGBUILDDIR>>/Source/Core/VideoCommon/AVIDump.cpp:54:17: error: ‘av_register_all’ was not declared in this scope
   54 |                 av_register_all();
      |                 ^~~~~~~~~~~~~~~
/<<PKGBUILDDIR>>/Source/Core/VideoCommon/AVIDump.cpp: In static member function ‘static bool AVIDump::CreateFile()’:
/<<PKGBUILDDIR>>/Source/Core/VideoCommon/AVIDump.cpp:84:36: error: ‘AVFormatContext’ {aka ‘struct AVFormatContext’} has no member named ‘filename’
   84 |         snprintf(s_format_context->filename, sizeof(s_format_context->filename), "%s",
      |                                    ^~~~~~~~
/<<PKGBUILDDIR>>/Source/Core/VideoCommon/AVIDump.cpp:84:71: error: ‘AVFormatContext’ {aka ‘struct AVFormatContext’} has no member named ‘filename’
   84 |         snprintf(s_format_context->filename, sizeof(s_format_context->filename), "%s",
      |                                                                       ^~~~~~~~
/<<PKGBUILDDIR>>/Source/Core/VideoCommon/AVIDump.cpp:86:48: error: ‘AVFormatContext’ {aka ‘struct AVFormatContext’} has no member named ‘filename’
   86 |         File::CreateFullPath(s_format_context->filename);
      |                                                ^~~~~~~~
/<<PKGBUILDDIR>>/Source/Core/VideoCommon/AVIDump.cpp:89:44: error: ‘AVFormatContext’ {aka ‘struct AVFormatContext’} has no member named ‘filename’
   89 |         if (File::Exists(s_format_context->filename))
      |                                            ^~~~~~~~
In file included from /<<PKGBUILDDIR>>/Source/Core/VideoCommon/AVIDump.cpp:19:
/<<PKGBUILDDIR>>/Source/Core/VideoCommon/AVIDump.cpp:92:87: error: ‘AVFormatContext’ {aka ‘struct AVFormatContext’} has no member named ‘filename’
   92 |                         AskYesNoT("Delete the existing file '%s'?", s_format_context->filename))
      |                                                                                       ^~~~~~~~
/<<PKGBUILDDIR>>/Source/Core/Common/MsgHandler.h:57:75: note: in definition of macro ‘AskYesNoT’
   57 |         #define AskYesNoT(format, ...) MsgAlert(true, QUESTION, format, ##__VA_ARGS__)
      |                                                                           ^~~~~~~~~~~
/<<PKGBUILDDIR>>/Source/Core/VideoCommon/AVIDump.cpp:94:56: error: ‘AVFormatContext’ {aka ‘struct AVFormatContext’} has no member named ‘filename’
   94 |                         File::Delete(s_format_context->filename);
      |                                                        ^~~~~~~~
/<<PKGBUILDDIR>>/Source/Core/VideoCommon/AVIDump.cpp:109:19: error: ‘AVStream’ {aka ‘struct AVStream’} has no member named ‘codec’
  109 |         s_stream->codec->codec_id = g_Config.bUseFFV1 ? AV_CODEC_ID_FFV1
      |                   ^~~~~
/<<PKGBUILDDIR>>/Source/Core/VideoCommon/AVIDump.cpp:112:27: error: ‘AVStream’ {aka ‘struct AVStream’} has no member named ‘codec’
  112 |                 s_stream->codec->codec_tag = MKTAG('X', 'V', 'I', 'D'); // Force XVID FourCC for better compatibility
      |                           ^~~~~
/<<PKGBUILDDIR>>/Source/Core/VideoCommon/AVIDump.cpp:113:19: error: ‘AVStream’ {aka ‘struct AVStream’} has no member named ‘codec’
  113 |         s_stream->codec->codec_type = AVMEDIA_TYPE_VIDEO;
      |                   ^~~~~
/<<PKGBUILDDIR>>/Source/Core/VideoCommon/AVIDump.cpp:114:19: error: ‘AVStream’ {aka ‘struct AVStream’} has no member named ‘codec’
  114 |         s_stream->codec->bit_rate = 400000;
      |                   ^~~~~
/<<PKGBUILDDIR>>/Source/Core/VideoCommon/AVIDump.cpp:115:19: error: ‘AVStream’ {aka ‘struct AVStream’} has no member named ‘codec’
  115 |         s_stream->codec->width = s_width;
      |                   ^~~~~
/<<PKGBUILDDIR>>/Source/Core/VideoCommon/AVIDump.cpp:116:19: error: ‘AVStream’ {aka ‘struct AVStream’} has no member named ‘codec’
  116 |         s_stream->codec->height = s_height;
      |                   ^~~~~
/<<PKGBUILDDIR>>/Source/Core/VideoCommon/AVIDump.cpp:117:19: error: ‘AVStream’ {aka ‘struct AVStream’} has no member named ‘codec’
  117 |         s_stream->codec->time_base.num = 1;
      |                   ^~~~~
/<<PKGBUILDDIR>>/Source/Core/VideoCommon/AVIDump.cpp:118:19: error: ‘AVStream’ {aka ‘struct AVStream’} has no member named ‘codec’
  118 |         s_stream->codec->time_base.den = VideoInterface::GetTargetRefreshRate();
      |                   ^~~~~
/<<PKGBUILDDIR>>/Source/Core/VideoCommon/AVIDump.cpp:119:19: error: ‘AVStream’ {aka ‘struct AVStream’} has no member named ‘codec’
  119 |         s_stream->codec->gop_size = 12;
      |                   ^~~~~
/<<PKGBUILDDIR>>/Source/Core/VideoCommon/AVIDump.cpp:120:19: error: ‘AVStream’ {aka ‘struct AVStream’} has no member named ‘codec’
  120 |         s_stream->codec->pix_fmt = g_Config.bUseFFV1 ? AV_PIX_FMT_BGRA : AV_PIX_FMT_YUV420P;
      |                   ^~~~~
/<<PKGBUILDDIR>>/Source/Core/VideoCommon/AVIDump.cpp:122:54: error: ‘AVStream’ {aka ‘struct AVStream’} has no member named ‘codec’
  122 |         if (!(codec = avcodec_find_encoder(s_stream->codec->codec_id)) ||
      |                                                      ^~~~~
/<<PKGBUILDDIR>>/Source/Core/VideoCommon/AVIDump.cpp:123:38: error: ‘AVStream’ {aka ‘struct AVStream’} has no member named ‘codec’
  123 |             (avcodec_open2(s_stream->codec, codec, nullptr) < 0))
      |                                      ^~~~~
/<<PKGBUILDDIR>>/Source/Core/VideoCommon/AVIDump.cpp:131:47: error: ‘AVStream’ {aka ‘struct AVStream’} has no member named ‘codec’
  131 |         s_size = avpicture_get_size(s_stream->codec->pix_fmt, s_width, s_height);
      |                                               ^~~~~
/<<PKGBUILDDIR>>/Source/Core/VideoCommon/AVIDump.cpp:131:18: error: ‘avpicture_get_size’ was not declared in this scope
  131 |         s_size = avpicture_get_size(s_stream->codec->pix_fmt, s_width, s_height);
      |                  ^~~~~~~~~~~~~~~~~~
/<<PKGBUILDDIR>>/Source/Core/VideoCommon/AVIDump.cpp:134:25: error: ‘AVPicture’ was not declared in this scope; did you mean ‘AVPictureType’?
  134 |         avpicture_fill((AVPicture*)s_scaled_frame, s_yuv_buffer, s_stream->codec->pix_fmt, s_width, s_height);
      |                         ^~~~~~~~~
      |                         AVPictureType
/<<PKGBUILDDIR>>/Source/Core/VideoCommon/AVIDump.cpp:134:35: error: expected primary-expression before ‘)’ token
  134 |         avpicture_fill((AVPicture*)s_scaled_frame, s_yuv_buffer, s_stream->codec->pix_fmt, s_width, s_height);
      |                                   ^
/<<PKGBUILDDIR>>/Source/Core/VideoCommon/AVIDump.cpp:134:76: error: ‘AVStream’ {aka ‘struct AVStream’} has no member named ‘codec’
  134 |         avpicture_fill((AVPicture*)s_scaled_frame, s_yuv_buffer, s_stream->codec->pix_fmt, s_width, s_height);
      |                                                                            ^~~~~
/<<PKGBUILDDIR>>/Source/Core/VideoCommon/AVIDump.cpp:134:9: error: ‘avpicture_fill’ was not declared in this scope
  134 |         avpicture_fill((AVPicture*)s_scaled_frame, s_yuv_buffer, s_stream->codec->pix_fmt, s_width, s_height);
      |         ^~~~~~~~~~~~~~
In file included from /<<PKGBUILDDIR>>/Source/Core/VideoCommon/AVIDump.cpp:20:
/<<PKGBUILDDIR>>/Source/Core/VideoCommon/AVIDump.cpp:136:76: error: ‘AVFormatContext’ {aka ‘struct AVFormatContext’} has no member named ‘filename’
  136 |         NOTICE_LOG(VIDEO, "Opening file %s for dumping", s_format_context->filename);
      |                                                                            ^~~~~~~~
/<<PKGBUILDDIR>>/Source/Core/Common/Logging/Log.h:93:54: note: in definition of macro ‘GENERIC_LOG’
   93 |                 GenericLog(v, t, __FILE__, __LINE__, __VA_ARGS__); \
      |                                                      ^~~~~~~~~~~
/<<PKGBUILDDIR>>/Source/Core/VideoCommon/AVIDump.cpp:136:9: note: in expansion of macro ‘NOTICE_LOG’
  136 |         NOTICE_LOG(VIDEO, "Opening file %s for dumping", s_format_context->filename);
      |         ^~~~~~~~~~
/<<PKGBUILDDIR>>/Source/Core/VideoCommon/AVIDump.cpp:137:64: error: ‘AVFormatContext’ {aka ‘struct AVFormatContext’} has no member named ‘filename’
  137 |         if (avio_open(&s_format_context->pb, s_format_context->filename, AVIO_FLAG_WRITE) < 0)
      |                                                                ^~~~~~~~
In file included from /<<PKGBUILDDIR>>/Source/Core/VideoCommon/AVIDump.cpp:20:
/<<PKGBUILDDIR>>/Source/Core/VideoCommon/AVIDump.cpp:139:72: error: ‘AVFormatContext’ {aka ‘struct AVFormatContext’} has no member named ‘filename’
  139 |                 WARN_LOG(VIDEO, "Could not open %s", s_format_context->filename);
      |                                                                        ^~~~~~~~
/<<PKGBUILDDIR>>/Source/Core/Common/Logging/Log.h:93:54: note: in definition of macro ‘GENERIC_LOG’
   93 |                 GenericLog(v, t, __FILE__, __LINE__, __VA_ARGS__); \
      |                                                      ^~~~~~~~~~~
/<<PKGBUILDDIR>>/Source/Core/VideoCommon/AVIDump.cpp:139:17: note: in expansion of macro ‘WARN_LOG’
  139 |                 WARN_LOG(VIDEO, "Could not open %s", s_format_context->filename);
      |                 ^~~~~~~~
/<<PKGBUILDDIR>>/Source/Core/VideoCommon/AVIDump.cpp: In function ‘void PreparePacket(AVPacket*)’:
/<<PKGBUILDDIR>>/Source/Core/VideoCommon/AVIDump.cpp:150:23: warning: ‘void av_init_packet(AVPacket*)’ is deprecated [-Wdeprecated-declarations]
  150 |         av_init_packet(pkt);
      |         ~~~~~~~~~~~~~~^~~~~
In file included from /usr/include/x86_64-linux-gnu/libavcodec/avcodec.h:45,
                 from /<<PKGBUILDDIR>>/Source/Core/VideoCommon/AVIDump.cpp:12:
/usr/include/x86_64-linux-gnu/libavcodec/packet.h:506:6: note: declared here
  506 | void av_init_packet(AVPacket *pkt);
      |      ^~~~~~~~~~~~~~
/<<PKGBUILDDIR>>/Source/Core/VideoCommon/AVIDump.cpp: In static member function ‘static void AVIDump::AddFrame(const u8*, int, int)’:
/<<PKGBUILDDIR>>/Source/Core/VideoCommon/AVIDump.cpp:157:25: error: ‘AVPicture’ was not declared in this scope; did you mean ‘AVPictureType’?
  157 |         avpicture_fill((AVPicture*)s_src_frame, const_cast<u8*>(data), s_pix_fmt, width, height);
      |                         ^~~~~~~~~
      |                         AVPictureType
/<<PKGBUILDDIR>>/Source/Core/VideoCommon/AVIDump.cpp:157:35: error: expected primary-expression before ‘)’ token
  157 |         avpicture_fill((AVPicture*)s_src_frame, const_cast<u8*>(data), s_pix_fmt, width, height);
      |                                   ^
/<<PKGBUILDDIR>>/Source/Core/VideoCommon/AVIDump.cpp:157:9: error: ‘avpicture_fill’ was not declared in this scope
  157 |         avpicture_fill((AVPicture*)s_src_frame, const_cast<u8*>(data), s_pix_fmt, width, height);
      |         ^~~~~~~~~~~~~~
/<<PKGBUILDDIR>>/Source/Core/VideoCommon/AVIDump.cpp:163:80: error: ‘AVStream’ {aka ‘struct AVStream’} has no member named ‘codec’
  163 |                                                   s_width, s_height, s_stream->codec->pix_fmt,
      |                                                                                ^~~~~
/<<PKGBUILDDIR>>/Source/Core/VideoCommon/AVIDump.cpp:170:44: error: ‘AVStream’ {aka ‘struct AVStream’} has no member named ‘codec’
  170 |         s_scaled_frame->format = s_stream->codec->pix_fmt;
      |                                            ^~~~~
/<<PKGBUILDDIR>>/Source/Core/VideoCommon/AVIDump.cpp:192:52: error: ‘AVStream’ {aka ‘struct AVStream’} has no member named ‘codec’
  192 |                 last_pts = (s_last_pts * s_stream->codec->time_base.den) / SystemTimers::GetTicksPerSecond();
      |                                                    ^~~~~
/<<PKGBUILDDIR>>/Source/Core/VideoCommon/AVIDump.cpp:195:57: error: ‘AVStream’ {aka ‘struct AVStream’} has no member named ‘codec’
  195 |         s_scaled_frame->pts = (pts_in_ticks * s_stream->codec->time_base.den) / SystemTimers::GetTicksPerSecond();
      |                                                         ^~~~~
/<<PKGBUILDDIR>>/Source/Core/VideoCommon/AVIDump.cpp:200:57: error: ‘AVStream’ {aka ‘struct AVStream’} has no member named ‘codec’
  200 |                 error = avcodec_encode_video2(s_stream->codec, &pkt, s_scaled_frame, &got_packet);
      |                                                         ^~~~~
/<<PKGBUILDDIR>>/Source/Core/VideoCommon/AVIDump.cpp:200:25: error: ‘avcodec_encode_video2’ was not declared in this scope; did you mean ‘avcodec_encode_subtitle’?
  200 |                 error = avcodec_encode_video2(s_stream->codec, &pkt, s_scaled_frame, &got_packet);
      |                         ^~~~~~~~~~~~~~~~~~~~~
      |                         avcodec_encode_subtitle
/<<PKGBUILDDIR>>/Source/Core/VideoCommon/AVIDump.cpp:208:58: error: ‘AVStream’ {aka ‘struct AVStream’} has no member named ‘codec’
  208 |                                                s_stream->codec->time_base, s_stream->time_base);
      |                                                          ^~~~~
/<<PKGBUILDDIR>>/Source/Core/VideoCommon/AVIDump.cpp:213:58: error: ‘AVStream’ {aka ‘struct AVStream’} has no member named ‘codec’
  213 |                                                s_stream->codec->time_base, s_stream->time_base);
      |                                                          ^~~~~
/<<PKGBUILDDIR>>/Source/Core/VideoCommon/AVIDump.cpp:224:57: error: ‘AVStream’ {aka ‘struct AVStream’} has no member named ‘codec’
  224 |                 error = avcodec_encode_video2(s_stream->codec, &pkt, nullptr, &got_packet);
      |                                                         ^~~~~
/<<PKGBUILDDIR>>/Source/Core/VideoCommon/AVIDump.cpp:224:25: error: ‘avcodec_encode_video2’ was not declared in this scope; did you mean ‘avcodec_encode_subtitle’?
  224 |                 error = avcodec_encode_video2(s_stream->codec, &pkt, nullptr, &got_packet);
      |                         ^~~~~~~~~~~~~~~~~~~~~
      |                         avcodec_encode_subtitle
/<<PKGBUILDDIR>>/Source/Core/VideoCommon/AVIDump.cpp: In static member function ‘static void AVIDump::CloseFile()’:
/<<PKGBUILDDIR>>/Source/Core/VideoCommon/AVIDump.cpp:241:31: error: ‘AVStream’ {aka ‘struct AVStream’} has no member named ‘codec’
  241 |                 if (s_stream->codec)
      |                               ^~~~~
/<<PKGBUILDDIR>>/Source/Core/VideoCommon/AVIDump.cpp:242:49: error: ‘AVStream’ {aka ‘struct AVStream’} has no member named ‘codec’
  242 |                         avcodec_close(s_stream->codec);
      |                                                 ^~~~~
/<<PKGBUILDDIR>>/Source/Core/VideoCommon/AVIDump.cpp: In static member function ‘static bool AVIDump::CreateFile()’:
/<<PKGBUILDDIR>>/Source/Core/VideoCommon/AVIDump.cpp:143:30: warning: ignoring return value of ‘int avformat_write_header(AVFormatContext*, AVDictionary**)’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
  143 |         avformat_write_header(s_format_context, nullptr);
      |         ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
make[3]: *** [Source/Core/VideoCommon/CMakeFiles/videocommon.dir/build.make:785: Source/Core/VideoCommon/CMakeFiles/videocommon.dir/AVIDump.cpp.o] Error 1
make[3]: *** Waiting for unfinished jobs....


Cheers
-- 
Sebastian Ramacher
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: not available
URL: <http://alioth-lists.debian.net/pipermail/pkg-games-devel/attachments/20220201/bdfcdd76/attachment-0001.sig>


More information about the Pkg-games-devel mailing list