Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 940733 - media-video/ffmpeg-6.1.2 build failure with v4l [error: incompatible function pointer types assigning to 'int (*)(int, unsigned long, ...)' from 'int (int, int, ...)]
Summary: media-video/ffmpeg-6.1.2 build failure with v4l [error: incompatible function...
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: PullRequest
Depends on:
Blocks:
 
Reported: 2024-10-03 23:15 UTC by ray
Modified: 2024-11-25 20:07 UTC (History)
3 users (show)

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


Attachments
emerge --info (emerge-info.txt,15.87 KB, text/plain)
2024-10-03 23:15 UTC, ray
Details
build.log (ffmpeg-6.1.2-build.log,69.53 KB, text/x-log)
2024-10-03 23:15 UTC, ray
Details

Note You need to log in before you can comment on or make changes to this bug.
Description ray 2024-10-03 23:15:20 UTC
Created attachment 904886 [details]
emerge --info

264_API_IMPORTS       -Wdeclaration-after-statement -Wall -Wdisabled-optimization -Wpointer-arith -Wredundant-decls -Wwrite-strings -Wtype-limits -Wundef -Wmissing-prototypes -Wstrict-prototypes -Wempty-body -Wno-parentheses -Wno-switch -Wno-format-zero-length -Wno-pointer-sign -Wno-unused-const-variable -Wno-bool-operation -Wno-char-subscripts -mtune=skylake -march=skylake -O2 -pipe -fcf-protection=full -fstack-clash-protection -fstack-protector-strong -ftrapv -ftrivial-auto-var-init=zero -g -fno-math-errno -fno-signed-zeros -mstack-alignment=16 -Qunused-arguments -Werror=implicit-function-declaration -Werror=missing-prototypes -Werror=return-type   -MMD -MF libavdevice/version.d -MT libavdevice/version.o -c -o libavdevice/version.o src/libavdevice/version.c
src/libavdevice/v4l2.c:151:9: error: incompatible function pointer types assigning to 'int (*)(int, unsigned long, ...)' from 'int (int, int, ...)' [-Wincompatible-function-pointer-types]
  151 |         SET_WRAPPERS();
      |         ^~~~~~~~~~~~~~
src/libavdevice/v4l2.c:137:17: note: expanded from macro 'SET_WRAPPERS'
  137 |     s->ioctl_f  = prefix ## ioctl;      \
      |                 ^           ~~~~~
mkdir -p libavfilter/dnn/
mkdir -p libavfilter/x86/
clang -I. -Isrc/ -D_ISOC99_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_POSIX_C_SOURCE=200112 -D_XOPEN_SOURCE=600 -DPIC -DZLIB_CONST -DHAVE_AV_CONFIG_H -DBUILDING_avfilter -mtune=skylake -march=skylake -O2 -pipe -fcf-protection=full -fstack-clash-protection -fstack-protector-strong -ftrapv -ftrivial-auto-var-init=zero -g   -march=skylake -std=c11 -fPIC -pthread  -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/fribidi -I/usr/include/freetype2  -I/usr/include/opus -I/usr/include/opus -D_REENTRANT -I/usr/include/svt-av1 -DEB_DLL       -I/usr/include/webp -I/usr/include/webp -DX264_API_IMPORTS       -Wdeclaration-after-statement -Wall -Wdisabled-optimization -Wpointer-arith -Wredundant-decls -Wwrite-strings -Wtype-limits -Wundef -Wmissing-prototypes -Wstrict-prototypes -Wempty-body -Wno-parentheses -Wno-switch -Wno-format-zero-length -Wno-pointer-sign -Wno-unused-const-variable -Wno-bool-operation -Wno-char-subscripts -mtune=skylake -march=skylake -O2 -pipe -fcf-protection=full -fstack-clash-protection -fstack-protector-strong -ftrapv -ftrivial-auto-var-init=zero -g -fno-math-errno -fno-signed-zeros -mstack-alignment=16 -Qunused-arguments -Werror=implicit-function-declaration -Werror=missing-prototypes -Werror=return-type   -MMD -MF libavfilter/log2_tab.d -MT libavfilter/log2_tab.o -c -o libavfilter/log2_tab.o src/libavfilter/log2_tab.c
mkdir -p libswscale/x86/
1 error generated.
clang -I. -Isrc/ -D_ISOC99_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_POSIX_C_SOURCE=200112 -D_XOPEN_SOURCE=600 -DPIC -DZLIB_CONST -DHAVE_AV_CONFIG_H -DBUILDING_swscale -mtune=skylake -march=skylake -O2 -pipe -fcf-protection=full -fstack-clash-protection -fstack-protector-strong -ftrapv -ftrivial-auto-var-init=zero -g   -march=skylake -std=c11 -fPIC -pthread  -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/fribidi -I/usr/include/freetype2  -I/usr/include/opus -I/usr/include/opus -D_REENTRANT -I/usr/include/svt-av1 -DEB_DLL       -I/usr/include/webp -I/usr/include/webp -DX264_API_IMPORTS       -Wdeclaration-after-statement -Wall -Wdisabled-optimization -Wpointer-arith -Wredundant-decls -Wwrite-strings -Wtype-limits -Wundef -Wmissing-prototypes -Wstrict-prototypes -Wempty-body -Wno-parentheses -Wno-switch -Wno-format-zero-length -Wno-pointer-sign -Wno-unused-const-variable -Wno-bool-operation -Wno-char-subscripts -mtune=skylake -march=skylake -O2 -pipe -fcf-protection=full -fstack-clash-protection -fstack-protector-strong -ftrapv -ftrivial-auto-var-init=zero -g -fno-math-errno -fno-signed-zeros -mstack-alignment=16 -Qunused-arguments -Werror=implicit-function-declaration -Werror=missing-prototypes -Werror=return-type   -MMD -MF libswscale/log2_tab.d -MT libswscale/log2_tab.o -c -o libswscale/log2_tab.o src/libswscale/log2_tab.c
make: *** [/var/tmp/portage/media-video/ffmpeg-6.1.2/work/ffmpeg-6.1.2/ffbuild/common.mak:81: libavdevice/v4l2.o] Error 1
make: *** Waiting for unfinished jobs....
 * ERROR: media-video/ffmpeg-6.1.2::gentoo failed (compile phase):
Comment 1 ray 2024-10-03 23:15:39 UTC
Created attachment 904887 [details]
build.log
Comment 2 Quincy Fleming 2024-11-18 09:45:30 UTC
ffmpeg version 6.1.2 requires the __musl__ flag to set. Version 7.1 and above requires the HAVE_POSIX_IOCTL flag to be set. Have a look here: 

Version 6.1.2: https://github.com/FFmpeg/FFmpeg/blob/b1a4534186ca51b0457579fc05a5739eb2cc45cd/libavdevice/v4l2.c#L110

Version 7.1: https://github.com/FFmpeg/FFmpeg/blob/b08d7969c550a804a59511c7b83f2dd8cc0499b8/libavdevice/v4l2.c#L114
Comment 3 Larry the Git Cow gentoo-dev 2024-11-25 20:07:26 UTC
The bug has been closed via the following commit(s):

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

commit c43b019c1265f5c3400528056e9e943d6e87e63b
Author:     Quincy Fleming <quincyf467@protonmail.com>
AuthorDate: 2024-11-11 07:41:33 +0000
Commit:     Sam James <sam@gentoo.org>
CommitDate: 2024-11-25 20:06:40 +0000

    media-video/ffmpeg: Fix build on musl
    
    Closes: https://bugs.gentoo.org/940733
    Signed-off-by: Quincy Fleming <quincyf467@protonmail.com>
    Closes: https://github.com/gentoo/gentoo/pull/39269
    Signed-off-by: Sam James <sam@gentoo.org>

 media-video/ffmpeg/ffmpeg-6.1.2.ebuild    | 4 ++++
 media-video/ffmpeg/ffmpeg-7.0.1-r1.ebuild | 4 ++++
 media-video/ffmpeg/ffmpeg-7.0.2-r1.ebuild | 4 ++++
 media-video/ffmpeg/ffmpeg-9999.ebuild     | 4 ++++
 4 files changed, 16 insertions(+)