Bug#1072444: performous: FTBFS with ffmpeg 7.0: ffmpeg.cc:293:94: error: ‘struct AVCodecContext’ has no member named =?UTF-8?Q?=E2=80=98channel=5Flayout=E2=80=99; ?= did you mean ‘ch_layout’?

Sebastian Ramacher sramacher at debian.org
Sun Jun 2 14:24:18 BST 2024


Source: performous
Version: 1.3.0+ds-1
Severity: important
Tags: trixie sid ftbfs
Usertags: ffmpeg-7.0

Hi,

during a rebuild of the reverse dependencies for the transition to
ffmpeg 7.0, your package failed to build


Relevant part (hopefully):
> cd /<<PKGBUILDDIR>>/obj-aarch64-linux-gnu/game && /usr/bin/c++ -DBOOST_ATOMIC_DYN_LINK -DBOOST_ATOMIC_NO_LIB -DBOOST_CHRONO_DYN_LINK -DBOOST_CHRONO_NO_LIB -DBOOST_IOSTREAMS_DYN_LINK -DBOOST_IOSTREAMS_NO_LIB -DBOOST_LOCALE_DYN_LINK -DBOOST_LOCALE_NO_LIB -DBOOST_PROGRAM_OPTIONS_DYN_LINK -DBOOST_PROGRAM_OPTIONS_NO_LIB -DBOOST_SYSTEM_DYN_LINK -DBOOST_SYSTEM_NO_LIB -DBOOST_THREAD_DYN_LINK -DBOOST_THREAD_NO_LIB -DCPPREST_FORCE_HTTP_CLIENT_ASIO -DCPPREST_FORCE_HTTP_LISTENER_ASIO -DCPPREST_NO_SSL_LEAK_SUPPRESS -DFMT_SHARED -DUSE_OPENCV -DUSE_PORTMIDI -DUSE_WEBSERVER -D_TURN_OFF_PLATFORM_STRING -I/<<PKGBUILDDIR>>/ced -I/<<PKGBUILDDIR>>/obj-aarch64-linux-gnu/game -I/<<PKGBUILDDIR>>/game -isystem /usr/include/SDL2 -isystem /usr/include/librsvg-2.0 -isystem /usr/include/cairo -isystem /usr/include/freetype2 -isystem /usr/include/gdk-pixbuf-2.0 -isystem /usr/lib/aarch64-linux-gnu/libxml++-2.6/include -isystem /usr/include/libxml++-2.6 -isystem /usr/include/libxml2 -isystem /usr/lib/aarch64-linux-gnu/glibmm-2.4/include -isystem /usr/include/glibmm-2.4 -isystem /usr/include/sigc++-2.0 -isystem /usr/lib/aarch64-linux-gnu/sigc++-2.0/include -isystem /usr/include/opencv4 -isystem /usr/include/pango-1.0 -isystem /usr/include/glib-2.0 -isystem /usr/lib/aarch64-linux-gnu/glib-2.0/include -isystem /usr/include/sysprof-6 -isystem /usr/include/harfbuzz -isystem /usr/include/libpng16 -isystem /usr/include/libmount -isystem /usr/include/blkid -isystem /usr/include/fribidi -isystem /usr/include/pixman-1 -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard  -Wdate-time -D_FORTIFY_SOURCE=2 -DNDEBUG -std=c++17 -Wall -Wextra -Wconversion -pthread -MD -MT game/CMakeFiles/performous.dir/ffmpeg.cc.o -MF CMakeFiles/performous.dir/ffmpeg.cc.o.d -o CMakeFiles/performous.dir/ffmpeg.cc.o -c /<<PKGBUILDDIR>>/game/ffmpeg.cc
> /<<PKGBUILDDIR>>/game/ffmpeg.cc: In constructor ‘AudioFFmpeg::AudioFFmpeg(const std::filesystem::__cxx11::path&, int, AudioCb)’:
> /<<PKGBUILDDIR>>/game/ffmpeg.cc:293:94: error: ‘struct AVCodecContext’ has no member named ‘channel_layout’; did you mean ‘ch_layout’?
>   293 |                 av_opt_set_int(m_resampleContext.get(), "in_channel_layout", m_codecContext->channel_layout ? static_cast<std::int64_t>(m_codecContext->channel_layout) : av_get_default_channel_layout(m_codecContext->channels), 0);
>       |                                                                                              ^~~~~~~~~~~~~~
>       |                                                                                              ch_layout
> /<<PKGBUILDDIR>>/game/ffmpeg.cc:293:153: error: ‘struct AVCodecContext’ has no member named ‘channel_layout’; did you mean ‘ch_layout’?
>   293 |                 av_opt_set_int(m_resampleContext.get(), "in_channel_layout", m_codecContext->channel_layout ? static_cast<std::int64_t>(m_codecContext->channel_layout) : av_get_default_channel_layout(m_codecContext->channels), 0);
>       |                                                                                                                                                         ^~~~~~~~~~~~~~
>       |                                                                                                                                                         ch_layout
> /<<PKGBUILDDIR>>/game/ffmpeg.cc:293:217: error: ‘struct AVCodecContext’ has no member named ‘channels’
>   293 |                 av_opt_set_int(m_resampleContext.get(), "in_channel_layout", m_codecContext->channel_layout ? static_cast<std::int64_t>(m_codecContext->channel_layout) : av_get_default_channel_layout(m_codecContext->channels), 0);
>       |                                                                                                                                                                                                                         ^~~~~~~~
> /<<PKGBUILDDIR>>/game/ffmpeg.cc:293:171: error: ‘av_get_default_channel_layout’ was not declared in this scope
>   293 |                 av_opt_set_int(m_resampleContext.get(), "in_channel_layout", m_codecContext->channel_layout ? static_cast<std::int64_t>(m_codecContext->channel_layout) : av_get_default_channel_layout(m_codecContext->channels), 0);
>       |                                                                                                                                                                           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> [ 47%] Building CXX object game/CMakeFiles/performous.dir/fixednotegraphscaler.cc.o
> cd /<<PKGBUILDDIR>>/obj-aarch64-linux-gnu/game && /usr/bin/c++ -DBOOST_ATOMIC_DYN_LINK -DBOOST_ATOMIC_NO_LIB -DBOOST_CHRONO_DYN_LINK -DBOOST_CHRONO_NO_LIB -DBOOST_IOSTREAMS_DYN_LINK -DBOOST_IOSTREAMS_NO_LIB -DBOOST_LOCALE_DYN_LINK -DBOOST_LOCALE_NO_LIB -DBOOST_PROGRAM_OPTIONS_DYN_LINK -DBOOST_PROGRAM_OPTIONS_NO_LIB -DBOOST_SYSTEM_DYN_LINK -DBOOST_SYSTEM_NO_LIB -DBOOST_THREAD_DYN_LINK -DBOOST_THREAD_NO_LIB -DCPPREST_FORCE_HTTP_CLIENT_ASIO -DCPPREST_FORCE_HTTP_LISTENER_ASIO -DCPPREST_NO_SSL_LEAK_SUPPRESS -DFMT_SHARED -DUSE_OPENCV -DUSE_PORTMIDI -DUSE_WEBSERVER -D_TURN_OFF_PLATFORM_STRING -I/<<PKGBUILDDIR>>/ced -I/<<PKGBUILDDIR>>/obj-aarch64-linux-gnu/game -I/<<PKGBUILDDIR>>/game -isystem /usr/include/SDL2 -isystem /usr/include/librsvg-2.0 -isystem /usr/include/cairo -isystem /usr/include/freetype2 -isystem /usr/include/gdk-pixbuf-2.0 -isystem /usr/lib/aarch64-linux-gnu/libxml++-2.6/include -isystem /usr/include/libxml++-2.6 -isystem /usr/include/libxml2 -isystem /usr/lib/aarch64-linux-gnu/glibmm-2.4/include -isystem /usr/include/glibmm-2.4 -isystem /usr/include/sigc++-2.0 -isystem /usr/lib/aarch64-linux-gnu/sigc++-2.0/include -isystem /usr/include/opencv4 -isystem /usr/include/pango-1.0 -isystem /usr/include/glib-2.0 -isystem /usr/lib/aarch64-linux-gnu/glib-2.0/include -isystem /usr/include/sysprof-6 -isystem /usr/include/harfbuzz -isystem /usr/include/libpng16 -isystem /usr/include/libmount -isystem /usr/include/blkid -isystem /usr/include/fribidi -isystem /usr/include/pixman-1 -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard  -Wdate-time -D_FORTIFY_SOURCE=2 -DNDEBUG -std=c++17 -Wall -Wextra -Wconversion -pthread -MD -MT game/CMakeFiles/performous.dir/fixednotegraphscaler.cc.o -MF CMakeFiles/performous.dir/fixednotegraphscaler.cc.o.d -o CMakeFiles/performous.dir/fixednotegraphscaler.cc.o -c /<<PKGBUILDDIR>>/game/fixednotegraphscaler.cc
> make[3]: *** [game/CMakeFiles/performous.dir/build.make:331: game/CMakeFiles/performous.dir/ffmpeg.cc.o] Error 1


The full build log is available from:
https://people.debian.org/~sramacher/ffmpeg-7.0/performous_arm64.build

ffmpeg 7.0 is available in experimental.

Cheers

-- 
Sebastian Ramacher



More information about the Pkg-games-devel mailing list