Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 910406 - media-video/ffmpeg-6.0-r1[libplacebo] fails with media-libs/libplacebo-6.292.0: error: ‘struct pl_render_params’ has no member named ‘force_icc_lut’
Summary: media-video/ffmpeg-6.0-r1[libplacebo] fails with media-libs/libplacebo-6.292....
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal
Assignee: Gentoo Media-video project
URL:
Whiteboard:
Keywords: PATCH, PullRequest
Depends on:
Blocks:
 
Reported: 2023-07-15 21:29 UTC by Conrad Kostecki
Modified: 2023-07-26 04:08 UTC (History)
4 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
build.log (build.log,587.39 KB, text/plain)
2023-07-15 21:29 UTC, Conrad Kostecki
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Conrad Kostecki gentoo-dev 2023-07-15 21:29:16 UTC
Compiling media-video/ffmpeg-6.0-r1[libplacebo] with media-libs/libplacebo-6.292.0 fails:

src/libavfilter/vf_libplacebo.c:461:10: error: ‘struct pl_render_params’ has no member named ‘force_icc_lut’
  461 |         .force_icc_lut = s->force_icc_lut,
      |          ^~~~~~~~~~~~~
Comment 1 Conrad Kostecki gentoo-dev 2023-07-15 21:29:36 UTC
Created attachment 865545 [details]
build.log
Comment 2 Conrad Kostecki gentoo-dev 2023-07-15 21:29:48 UTC
Portage 3.0.49 (python 3.11.4-final-0, default/linux/amd64/17.1, gcc-13, glibc-2.37-r3, 6.4.2-gentoo x86_64)
=================================================================
System uname: Linux-6.4.2-gentoo-x86_64-Intel-R-_Xeon-R-_CPU_E3-1275_v6_@_3.80GHz-with-glibc2.37
KiB Mem:    63999476 total,   8132744 free
KiB Swap:   67633148 total,  65128924 free
Timestamp of repository gentoo: Sat, 15 Jul 2023 00:45:01 +0000
Head commit of repository gentoo: 0e916939307e2b03aaae4e44aedc63b257bf8169
Timestamp of repository guru: Thu, 13 Jul 2023 09:46:36 +0000
Head commit of repository guru: 6c8caf5e28e8a16578eada4cb83a5a44676eaa3d

sh bash 5.2_p15-r6
ld GNU ld (Gentoo 2.40 p5) 2.40.0
distcc 3.4 x86_64-pc-linux-gnu [disabled]
ccache version 4.8.2 [enabled]
app-misc/pax-utils:        1.3.7::gentoo
app-shells/bash:           5.2_p15-r6::gentoo
dev-java/java-config:      2.3.1-r1::gentoo
dev-lang/perl:             5.38.0::gentoo
dev-lang/python:           3.10.12::gentoo, 3.11.4::gentoo, 3.12.0_beta4::gentoo
dev-lang/rust:             1.70.0::gentoo
dev-util/ccache:           4.8.2::gentoo
dev-util/cmake:            3.26.4-r1::gentoo
dev-util/meson:            1.1.1::gentoo
sys-apps/baselayout:       2.14::gentoo
sys-apps/openrc:           0.48::gentoo
sys-apps/sandbox:          2.36::gentoo
sys-devel/autoconf:        2.71-r6::gentoo
sys-devel/automake:        1.16.5-r1::gentoo
sys-devel/binutils:        2.40-r5::gentoo
sys-devel/binutils-config: 5.5::gentoo
sys-devel/clang:           15.0.7-r3::gentoo, 16.0.6::gentoo
sys-devel/gcc:             13.1.1_p20230527::gentoo
sys-devel/gcc-config:      2.11::gentoo
sys-devel/libtool:         2.4.7-r1::gentoo
sys-devel/lld:             15.0.7::gentoo, 16.0.6::gentoo
sys-devel/llvm:            15.0.7-r3::gentoo, 16.0.6::gentoo
sys-devel/make:            4.4.1-r1::gentoo
sys-kernel/linux-headers:  6.4::gentoo (virtual/os-headers)
sys-libs/glibc:            2.37-r3::gentoo
Repositories:

gentoo
    location: /var/db/repos/gentoo
    sync-type: rsync
    sync-uri: rsync://rsync.de.gentoo.org/gentoo-portage
    priority: -1000
    volatile: False
    sync-rsync-verify-jobs: 1
    sync-rsync-extra-opts: --compress --exclude-from=/etc/portage/rsync_excludes --new-compress
    sync-rsync-verify-max-age: 24
    sync-rsync-verify-metamanifest: yes

bl4ckb0x
    location: /usr/local/portage
    masters: gentoo
    volatile: True

guru
    location: /var/db/repos/guru
    sync-type: git
    sync-uri: https://github.com/gentoo-mirror/guru.git
    masters: gentoo
    volatile: False

ACCEPT_KEYWORDS="amd64 ~amd64"
ACCEPT_LICENSE="*"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=native -mfpmath=sse,387 -mtune=intel -O3 -frecord-gcc-switches -fomit-frame-pointer -malign-data=abi -mtls-dialect=gnu2 -pipe"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /etc/stunnel/stunnel.conf /etc/teamspeak3-server/ts3server.ini /etc/teamspeak3-server/ts3server_mariadb.ini /etc/teamspeak3-server/tsdns_settings.ini /usr/share/gnupg/qualified.txt"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/php/apache2-php7.4/ext-active/ /etc/php/apache2-php8.1/ext-active/ /etc/php/apache2-php8.2/ext-active/ /etc/php/cgi-php7.4/ext-active/ /etc/php/cgi-php8.1/ext-active/ /etc/php/cgi-php8.2/ext-active/ /etc/php/cli-php7.4/ext-active/ /etc/php/cli-php8.1/ext-active/ /etc/php/cli-php8.2/ext-active/ /etc/php/fpm-php7.4/ext-active/ /etc/php/fpm-php8.1/ext-active/ /etc/php/fpm-php8.2/ext-active/ /etc/php/phpdbg-php7.4/ext-active/ /etc/php/phpdbg-php8.1/ext-active/ /etc/php/phpdbg-php8.2/ext-active/ /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c"
CXXFLAGS="-march=native -mfpmath=sse,387 -mtune=intel -O3 -frecord-gcc-switches -fomit-frame-pointer -malign-data=abi -mtls-dialect=gnu2 -pipe -fvisibility-inlines-hidden"
DISTDIR="/usr/portage/distfiles"
EMERGE_DEFAULT_OPTS="--autounmask=n --quiet-build=n --with-bdeps=y"
ENV_UNSET="CARGO_HOME DBUS_SESSION_BUS_ADDRESS DISPLAY GDK_PIXBUF_MODULE_FILE GOBIN GOPATH PERL5LIB PERL5OPT PERLPREFIX PERL_CORE PERL_MB_OPT PERL_MM_OPT XAUTHORITY XDG_CACHE_HOME XDG_CONFIG_HOME XDG_DATA_HOME XDG_RUNTIME_DIR XDG_STATE_HOME"
FCFLAGS="-march=native -mfpmath=sse,387 -mtune=intel -O3 -frecord-gcc-switches -fomit-frame-pointer -malign-data=abi -mtls-dialect=gnu2 -pipe"
FEATURES="assume-digests binpkg-docompress binpkg-dostrip binpkg-logs binpkg-multi-instance buildpkg-live ccache config-protect-if-modified distlocks ebuild-locks fixlafiles ipc-sandbox merge-sync multilib-strict network-sandbox news parallel-fetch pid-sandbox preserve-libs protect-owned qa-unresolved-soname-deps sandbox sfperms sign strict strict-keepdir unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync warn-on-large-env xattr"
FFLAGS="-march=native -mfpmath=sse,387 -mtune=intel -O3 -frecord-gcc-switches -fomit-frame-pointer -malign-data=abi -mtls-dialect=gnu2 -pipe"
GENTOO_MIRRORS="http://distfiles.gentoo.org"
INSTALL_MASK="/etc/grub.d /etc/systemd /etc/xinetd.d"
LANG="de_DE.UTF-8"
LC_ALL="de_DE.UTF-8"
LDFLAGS="-Wl,--as-needed -Wl,--defsym=__gentoo_check_ldflags__=0 -Wl,-O1 -Wl,--sort-common -Wl,-z,now"
LEX="flex"
LINGUAS="de de_DE"
MAKEOPTS="-j9 -l8"
PKGDIR="/var/cache/binpkgs"
PORTAGE_BUNZIP2_COMMAND="pbunzip2"
PORTAGE_BZIP2_COMMAND="pbzip2"
PORTAGE_COMPRESS="xz"
PORTAGE_COMPRESS_FLAGS="-9e"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_EXTRA_OPTS="--compress --exclude-from=/etc/portage/rsync_excludes --new-compress"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --omit-dir-times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --exclude=/.git"
PORTAGE_TMPDIR="/var/tmp"
SHELL="/bin/zsh"
USE="X aalib accessibility acl alsa amd64 bash-completion berkdb bzip2 cairo calendar caps cddb cgi cjk colord cracklib crypt cups curl cvs cxx dbus dedicated dga djvu dri dvb elogind encode exif fbcon ffmpeg fftw filecaps flac fontconfig fortran ftp gd gdbm geolocation gif git gmp gnutls gphoto2 gpm graphviz gsm gstreamer hddtemp iconv icu idn ieee1394 imap imlib inotify introspection ipv6 java javascript jbig jemalloc jit joystick jpeg jpeg2k kerberos latex lcms ldap libass libcaca libnotify libsamplerate lm-sensors lua luajit lz4 lzma lzo magic maildir mbox mhash mikmod milter mmap modplug modules-sign motif mp3 mysql mysqli ncurses nls nntp offensive ogg openal openexr opengl openmp opus orc oss pam pcre pdf perl pie png policykit posix postgres postscript pulseaudio python raw readline rtmp samba sasl scanner sdl seccomp session slang smartcard sndfile snmp soap sockets sound sox speex spell split-usr sqlite ssl startup-notification strip subversion suid svg symlink syslog tcl tcpd test-rust theora threads tiff truetype udev unicode upnp usb v4l vaapi vdpau verify-sig vhosts vim-syntax vnc vorbis wavpack wayland webkit webp wmf x264 xattr xcb xcomposite xface xft xinetd xml xmpp xpm xscreensaver xv xvid zeroconf zip zlib zsh-completion zstd" ABI_X86="32 64" COLLECTD_PLUGINS="apcups battery buddyinfo cgroups check_uptime connectivity conntrack contextswitch cpu cpufreq cpusleep df disk dns entropy ethstat exec fhcount filecount hddtemp hugepages interface ipc ipmi iptables irq java load mcelog md memory mysql netlink nfs nginx ntpd openldap openvpn pcie_errors ping postgresql processes protocols rrdcached sensors serial smart snmp swap syslog tcpconns thermal turbostat unixsock uptime users wireless" CPU_FLAGS_X86="aes avx avx2 rdrand mmx mmxext sse sse2 sse3 sse4_1 sse4_2 ssse3" CURL_SSL="openssl" ELIBC="glibc" GPSD_PROTOCOLS="garmin garmintxt nmea0183" GRUB_PLATFORMS="pc" INPUT_DEVICES="libinput" KERNEL="linux" L10N="de de_DE" LCD_DEVICES="cfontzpacket crystalfontz glcd2usb hd44780 lcd2usb" LUA_SINGLE_TARGET="lua5-3" LUA_TARGETS="lua5-3 lua5-4" NGINX_MODULES_HTTP="access addition auth_basic autoindex brotli browser charset fancyindex fastcgi geo geoip geoip2 gunzip gzip gzip_static headers_more image_filter javascript limit_conn limit_req map metrics proxy realip referer rewrite secure_link sticky stub_status upload_progress upstream_keepalive vhost_traffic_status xslt" NGINX_MODULES_MAIL="imap pop3 smtp" NGINX_MODULES_STREAM="access geo geoip geoip2 javascript limit_conn map realip return ssl_preread" PHP_TARGETS="php7-4 php8-1 php8-2" PYTHON_SINGLE_TARGET="python3_11" PYTHON_TARGETS="python3_11 python3_12" RUBY_TARGETS="ruby31 ruby32" SANE_BACKENDS="hp net" VIDEO_CARDS="d3d12 intel i965"
Unset:  ADDR2LINE, AR, ARFLAGS, AS, ASFLAGS, CC, CCLD, CONFIG_SHELL, CPP, CPPFLAGS, CTARGET, CXX, CXXFILT, ELFEDIT, EXTRA_ECONF, F77FLAGS, FC, GCOV, GPROF, LD, LFLAGS, LIBTOOL, MAKE, MAKEFLAGS, NM, OBJCOPY, OBJDUMP, PORTAGE_BINHOST, RANLIB, READELF, RUSTFLAGS, SIZE, STRINGS, STRIP, YACC, YFLAGS
Comment 3 Ionen Wolkens gentoo-dev 2023-07-15 21:45:50 UTC
Tend to forget that ffmpeg uses this too, ftr mpv-0.35.1 depends on <libplacebo-6 currently (broken as well), while mpv-9999 requires the newer one in meson.build for gpu-next (could be loosened to disable gpu-next if there was dependency conflicts though).

I'd imagine ffmpeg-9999 may already support it (haven't tried), but unsure if it allows both versions.

Either way all libplacebo revdeps should have := wrt [1], the soname changes almost every time.

[1] https://github.com/gentoo/gentoo/pull/31887
Comment 4 Ionen Wolkens gentoo-dev 2023-07-15 22:14:11 UTC
(In reply to Ionen Wolkens from comment #3)
> (could be loosened to disable gpu-next if there was
> dependency conflicts though).
Actually I went ahead and did that in 4d9d50d4346a0a584780a3da20e1366d49231051, haven't looked at how trivial it is to fix in ffmpeg but (if needed/wanted) a temporary <libplacebo-6 like older mpv did won't cause problems beside disabling gpu-next in mpv-9999
Comment 5 Ionen Wolkens gentoo-dev 2023-07-15 22:26:46 UTC
(In reply to Ionen Wolkens from comment #4)
> haven't looked at how trivial it is to fix in ffmpeg ...
Well, haven't tried but seems alpine[1] is backporting two commits[2][3] for ffmpeg-6 for newer libplacebo

[1] https://git.alpinelinux.org/aports/commit/community/ffmpeg?id=6ab8425bd9b18869fd32d5350aa1628c127678da
[2] https://github.com/FFmpeg/FFmpeg/commit/11eca6018c40f5ebe6af93cbc4b4dce447d8b3bc
[3] https://github.com/FFmpeg/FFmpeg/commit/1231003c3c6d4839a9e838d06f8e16ee7690958f
Comment 6 Larry the Git Cow gentoo-dev 2023-07-26 04:08:32 UTC
The bug has been closed via the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=180b5c780fbc8154bf4be5c69d67ff184cd539c6

commit 180b5c780fbc8154bf4be5c69d67ff184cd539c6
Author:     Peter Levine <plevine457@gmail.com>
AuthorDate: 2023-07-21 02:54:23 +0000
Commit:     Sam James <sam@gentoo.org>
CommitDate: 2023-07-26 03:49:57 +0000

    media-video/ffmpeg: fix building against libplacebo-6
    
    Backports two commits from master that remove the offending
    force_icc_lut field.
    
    Closes: https://bugs.gentoo.org/910406
    Closes: https://github.com/gentoo/gentoo/pull/31987
    Signed-off-by: Peter Levine <plevine457@gmail.com>
    Signed-off-by: Sam James <sam@gentoo.org>

 media-video/ffmpeg/ffmpeg-6.0-r4.ebuild            |   1 +
 ...eg-6.0-libplacebo-remove-deprecated-field.patch | 103 +++++++++++++++++++++
 2 files changed, 104 insertions(+)