mkdir -p tests/ mkdir -p "/usr/src/portage/media-video/ffmpeg-4.2.3/image/usr/share/man/man1" install -m 644 doc/ffmpeg.1 doc/ffplay.1 doc/ffprobe.1 doc/ffmpeg-all.1 doc/ffplay-all.1 doc/ffprobe-all.1 doc/ffmpeg-utils.1 doc/ffmpeg-scaler.1 doc/ffmpeg-resa mpler.1 doc/ffmpeg-codecs.1 doc/ffmpeg-bitstream-filters.1 doc/ffmpeg-formats.1 doc/ffmpeg-protocols.1 doc/ffmpeg-devices.1 doc/ffmpeg-filters.1 "/usr/src/portage/medi a-video/ffmpeg-4.2.3/image/usr/share/man/man1" mkdir -p "/usr/src/portage/media-video/ffmpeg-4.2.3/image/usr/share/man/man3" install -m 644 doc/libavutil.3 doc/libswscale.3 doc/libswresample.3 doc/libavcodec.3 doc/libavformat.3 doc/libavdevice.3 doc/libavfilter.3 "/usr/src/portage/media-vide o/ffmpeg-4.2.3/image/usr/share/man/man3" src/libavformat/libsmbclient.c:21:10: fatal error: libsmbclient.h: No such file or directory 21 | #include <libsmbclient.h> | ^~~~~~~~~~~~~~~~ compilation terminated. make: *** [/usr/src/portage/media-video/ffmpeg-4.2.3/work/ffmpeg-4.2.3/ffbuild/common.mak:59: libavformat/libsmbclient.o] Error 1 * ERROR: media-video/ffmpeg-4.2.3::gentoo failed (install phase): * emake failed * Reproducible: Always
Created attachment 644538 [details] The complete build log
Created attachment 644540 [details] emerge --info '=media-video/ffmpeg-4.2.3::gentoo'
Created attachment 644542 [details] emerge -pqv '=media-video/ffmpeg-4.2.3::gentoo'
Created attachment 644544 [details] Fixed ebuild Lines added: # Disable samba support use samba || myconf+=( --disable-protocol=libsmbclient )
Please attach complete build.log (current build.log only contains src_install phase). I am unable to reproduce. Also, your fix shouldn't be necessary: libsmbclient_protocol depends on libsmbclient (https://github.com/FFmpeg/FFmpeg/blob/release/4.2/configure#L3406). When ebuild is called with USE=-samba, this should translate to --disable-libsmbclient which should cause the check_deps call for libsmbclient_protocol to fail. I added conditional debugging for libsmbclient: > # ./configure --disable-libsmbclient > + eval '[' 'x$libsmbclient_protocol_checking' = xdone ']' > ++ '[' x = xdone ']' > + eval '[' 'x$libsmbclient_protocol_checking' = xinprogress ']' > ++ '[' x = xinprogress ']' > + eval ' > dep_all=$libsmbclient_protocol_deps > dep_any=$libsmbclient_protocol_deps_any > dep_con=$libsmbclient_protocol_conflict > dep_sel=$libsmbclient_protocol_select > dep_sgs=$libsmbclient_protocol_suggest > dep_ifa=$libsmbclient_protocol_if > dep_ifn=$libsmbclient_protocol_if_any > ' > ++ dep_all='libsmbclient gplv3' > ++ dep_any= > ++ dep_con= > ++ dep_sel= > ++ dep_sgs= > ++ dep_ifa= > ++ dep_ifn= > + '[' 'libsmbclient gplv3' ']' > + eval libsmbclient_protocol_checking=inprogress > ++ libsmbclient_protocol_checking=inprogress > + set -- libsmbclient_protocol 'libsmbclient gplv3' '' '' '' '' '' '' > + check_deps libsmbclient gplv3 > + for cfg in "$@" > + [[ libsmbclient == libsmbclient_protocol ]] > + eval '[' 'x$libsmbclient_checking' = xdone ']' > ++ '[' xdone = xdone ']' > + continue > + for cfg in "$@" > + [[ gplv3 == libsmbclient_protocol ]] > + eval '[' 'x$gplv3_checking' = xdone ']' > ++ '[' x = xdone ']' > + eval '[' 'x$gplv3_checking' = xinprogress ']' > ++ '[' x = xinprogress ']' > + eval ' > dep_all=$gplv3_deps > dep_any=$gplv3_deps_any > dep_con=$gplv3_conflict > dep_sel=$gplv3_select > dep_sgs=$gplv3_suggest > dep_ifa=$gplv3_if > dep_ifn=$gplv3_if_any > ' > ++ dep_all= > ++ dep_any= > ++ dep_con= > ++ dep_sel= > ++ dep_sgs= > ++ dep_ifa= > ++ dep_ifn= > + '[' '' ']' > + eval gplv3_checking=done > ++ gplv3_checking=done > + [[ gplv3 == libsmbclient_protocol ]] > + cfg=libsmbclient_protocol > + dep_all='libsmbclient gplv3' > + dep_any= > + dep_con= > + dep_sel= > + dep_sgs= > + dep_ifa= > + dep_ifn= > + '[' -n '' ']' > + '[' -n '' ']' > + enabled_all libsmbclient gplv3 > + for opt in "$@" > + enabled libsmbclient > + test libsmbclient = libsmbclient > + op== > + eval test 'x$libsmbclient' = xyes > ++ test xno = xyes > + return 1 > + disable_with_reason libsmbclient_protocol 'not all dependencies are satisfied: libsmbclient gplv3' > + disable libsmbclient_protocol > + set_all no libsmbclient_protocol > + value=no > + shift > + for var in $* > + eval libsmbclient_protocol=no > ++ libsmbclient_protocol=no > + eval 'libsmbclient_protocol_disable_reason="not all dependencies are satisfied: libsmbclient gplv3"' > ++ libsmbclient_protocol_disable_reason='not all dependencies are satisfied: libsmbclient gplv3' > + requested libsmbclient_protocol > + test libsmbclient_protocol = libsmbclient_protocol > + op== > + eval test 'x$libsmbclient_protocol_requested' = xyes > ++ test x = xyes > + enabled_any > + disabled_all > + disabled_any > + return 1 > + enabled libsmbclient_protocol > + test libsmbclient_protocol = libsmbclient_protocol > + op== > + eval test 'x$libsmbclient_protocol' = xyes > ++ test xno = xyes > + for dep in $dep_all $dep_any $dep_sel $dep_sgs > + is_in libsmbclient avdevice avfilter swscale postproc avformat avcodec swresample avresample avutil > + value=libsmbclient > + shift > + for var in $* > + '[' avdevice = libsmbclient ']' > + for var in $* > + '[' avfilter = libsmbclient ']' > + for var in $* > + '[' swscale = libsmbclient ']' > + for var in $* > + '[' postproc = libsmbclient ']' > + for var in $* > + '[' avformat = libsmbclient ']' > + for var in $* > + '[' avcodec = libsmbclient ']' > + for var in $* > + '[' swresample = libsmbclient ']' > + for var in $* > + '[' avresample = libsmbclient ']' > + for var in $* > + '[' avutil = libsmbclient ']' > + return 1 > + enabled libsmbclient > + test libsmbclient = libsmbclient > + op== > + eval test 'x$libsmbclient' = xyes > ++ test xno = xyes > + for dep in $dep_all $dep_any $dep_sel $dep_sgs > + is_in gplv3 avdevice avfilter swscale postproc avformat avcodec swresample avresample avutil > + value=gplv3 > + shift > + for var in $* > + '[' avdevice = gplv3 ']' > + for var in $* > + '[' avfilter = gplv3 ']' > + for var in $* > + '[' swscale = gplv3 ']' > + for var in $* > + '[' postproc = gplv3 ']' > + for var in $* > + '[' avformat = gplv3 ']' > + for var in $* > + '[' avcodec = gplv3 ']' > + for var in $* > + '[' swresample = gplv3 ']' > + for var in $* > + '[' avresample = gplv3 ']' > + for var in $* > + '[' avutil = gplv3 ']' > + return 1 > + enabled gplv3 > + test gplv3 = gplv3 > + op== > + eval test 'x$gplv3' = xyes > ++ test x = xyes > + eval libsmbclient_protocol_checking=done > ++ libsmbclient_protocol_checking=done > + [[ libsmbclient_protocol == libsmbclient_protocol ]] > + set +x > DEBUG END
libsmbclient is provided by samba package. If the fixed ebuild compiles without samba installed I can give it a try and confirm.
Please attach a full build.log as obtained by using 'emerge'. ffmpeg's configure has: libsmbclient_protocol_deps="libsmbclient gplv3" so the line you add shouldn't be necessary: that protocol wont be built if either libsmbclient or gplv3 is disabled
btw: # emerge -pvO media-video/ffmpeg samba [ebuild R ] media-video/ffmpeg-4.2.3 USE="X encode fontconfig gpl iconv libdrm lzma network openssl opus postproc threads v4l x264 x265 zlib -alsa (-amr) -amrenc (-appkit) -bluray (-bs2b) -bzip2 -cdio -chromaprint -chromium -codec2 -cpudetection (-cuda) -dav1d -debug -doc -fdk -flite -frei0r -fribidi -gcrypt -gme -gmp -gnutls -gsm -hardcoded-tables -iec61883 (-ieee1394) -jack -jpeg2k -kvazaar (-ladspa) -libaom -libaribb24 -libass -libcaca -libilbc -libressl -librtmp -libsoxr -libtesseract -libv4l -libxml2 -lv2 (-mipsdspr1) (-mipsdspr2) (-mipsfpu) (-mmal) -modplug -mp3 -openal (-opencl) -opengl -openh264 -oss -pic -pulseaudio -rubberband -samba -sdl -snappy -speex -srt -ssh -static-libs -svg -test -theora -truetype -twolame -vaapi (-vdpau) -vidstab -vorbis (-vpx) -wavpack -webp -xvid -zeromq -zimg (-zvbi)" CPU_FLAGS_ARM="(neon) (thumb) (thumb2) (v6) (v8) (vfp) (vfpv3)" FFTOOLS="aviocat cws2fws ffescape ffeval ffhash fourcc2pixfmt graph2dot ismindex pktdumper qt-faststart sidxindex trasher" VIDEO_CARDS="(-nvidia)" [ebuild N ] net-fs/samba-4.12.3-r1 USE="acl pam system-mitkrb5 (-addc) (-addns) (-ads) (-ceph) -client (-cluster) -cups -debug (-dmapi) (-fam) -gpg -iprint -json -ldap -profiling-data (-python) -quota (-selinux) -snapper -syslog (-system-heimdal) -systemd (-test) -winbind -zeroconf" KERNEL="(linux)" PYTHON_SINGLE_TARGET="python3_7 -python3_6 -python3_8"
It compiles now.