-
Notifications
You must be signed in to change notification settings - Fork 8
Description
Ahoj,
I try to build the packages libffmpeg-custom
and ffmpeg-custom
from the HandsomeMod/packages
feed (with fdkaac-patches removed, see issue #3).
There are several issues with this package.
The base configuration I use for the collected reports here is the following:
grep -i ffmpeg .config
:CONFIG_PACKAGE_libffmpeg-audio-dec=m CONFIG_PACKAGE_libffmpeg-custom=m CONFIG_FFMPEG_CUSTOM_GPL=y CONFIG_FFMPEG_CUSTOM_GPLV3=y CONFIG_FFMPEG_CUSTOM_NONFREE=y CONFIG_FFMPEG_CUSTOM_PATENTED=y CONFIG_FFMPEG_CUSTOM_LARGE=y CONFIG_FFMPEG_CUSTOM_FFSERVER_SUPPORT=y CONFIG_FFMPEG_CUSTOM_MINIDLNA_SUPPORT=y CONFIG_FFMPEG_CUSTOM_AUDIO_DEC_SUPPORT=y # CONFIG_FFMPEG_CUSTOM_PROGRAMS is not set # CONFIG_FFMPEG_CUSTOM_SELECT_libfdk-aac is not set CONFIG_FFMPEG_CUSTOM_SELECT_libmp3lame=y # CONFIG_FFMPEG_CUSTOM_SELECT_libopus is not set CONFIG_FFMPEG_CUSTOM_SELECT_libshine=y CONFIG_FFMPEG_CUSTOM_SELECT_libx264=y CONFIG_FFMPEG_CUSTOM_ENCODER_ac3=y CONFIG_FFMPEG_CUSTOM_ENCODER_jpegls=y CONFIG_FFMPEG_CUSTOM_ENCODER_mpeg1video=y CONFIG_FFMPEG_CUSTOM_ENCODER_mpeg2video=y CONFIG_FFMPEG_CUSTOM_ENCODER_mpeg4=y CONFIG_FFMPEG_CUSTOM_ENCODER_pcm_s16be=y CONFIG_FFMPEG_CUSTOM_ENCODER_pcm_s16le=y CONFIG_FFMPEG_CUSTOM_ENCODER_png=y CONFIG_FFMPEG_CUSTOM_ENCODER_vorbis=y CONFIG_FFMPEG_CUSTOM_ENCODER_zlib=y CONFIG_FFMPEG_CUSTOM_DECODER_aac=y CONFIG_FFMPEG_CUSTOM_SELECT_adpcm=y CONFIG_FFMPEG_CUSTOM_DECODER_ac3=y CONFIG_FFMPEG_CUSTOM_DECODER_alac=y CONFIG_FFMPEG_CUSTOM_DECODER_amrnb=y CONFIG_FFMPEG_CUSTOM_DECODER_amrwb=y CONFIG_FFMPEG_CUSTOM_DECODER_ape=y CONFIG_FFMPEG_CUSTOM_DECODER_atrac3=y CONFIG_FFMPEG_CUSTOM_DECODER_flac=y CONFIG_FFMPEG_CUSTOM_DECODER_gif=y CONFIG_FFMPEG_CUSTOM_DECODER_h264=y CONFIG_FFMPEG_CUSTOM_DECODER_hevc=y CONFIG_FFMPEG_CUSTOM_DECODER_jpegls=y CONFIG_FFMPEG_CUSTOM_DECODER_mp2=y CONFIG_FFMPEG_CUSTOM_DECODER_mp3=y CONFIG_FFMPEG_CUSTOM_DECODER_mpegvideo=y CONFIG_FFMPEG_CUSTOM_DECODER_mpeg1video=y CONFIG_FFMPEG_CUSTOM_DECODER_mpeg2video=y CONFIG_FFMPEG_CUSTOM_DECODER_mpeg4=y CONFIG_FFMPEG_CUSTOM_DECODER_mpc7=y CONFIG_FFMPEG_CUSTOM_DECODER_mpc8=y CONFIG_FFMPEG_CUSTOM_DECODER_opus=y CONFIG_FFMPEG_CUSTOM_DECODER_pcm_s16be=y CONFIG_FFMPEG_CUSTOM_DECODER_pcm_s16le=y CONFIG_FFMPEG_CUSTOM_DECODER_png=y CONFIG_FFMPEG_CUSTOM_DECODER_vc1=y CONFIG_FFMPEG_CUSTOM_DECODER_vorbis=y CONFIG_FFMPEG_CUSTOM_DECODER_wavpack=y CONFIG_FFMPEG_CUSTOM_DECODER_wmav1=y CONFIG_FFMPEG_CUSTOM_DECODER_wmav2=y CONFIG_FFMPEG_CUSTOM_DECODER_zlib=y CONFIG_FFMPEG_CUSTOM_MUXER_ac3=y CONFIG_FFMPEG_CUSTOM_MUXER_ffm=y CONFIG_FFMPEG_CUSTOM_MUXER_h264=y CONFIG_FFMPEG_CUSTOM_MUXER_hevc=y CONFIG_FFMPEG_CUSTOM_MUXER_mp3=y CONFIG_FFMPEG_CUSTOM_MUXER_mp4=y CONFIG_FFMPEG_CUSTOM_MUXER_mpeg1video=y CONFIG_FFMPEG_CUSTOM_MUXER_mpeg2video=y CONFIG_FFMPEG_CUSTOM_MUXER_mpegts=y CONFIG_FFMPEG_CUSTOM_MUXER_ogg=y CONFIG_FFMPEG_CUSTOM_MUXER_rtp=y CONFIG_FFMPEG_CUSTOM_DEMUXER_aac=y CONFIG_FFMPEG_CUSTOM_DEMUXER_avi=y CONFIG_FFMPEG_CUSTOM_DEMUXER_ac3=y CONFIG_FFMPEG_CUSTOM_DEMUXER_amr=y CONFIG_FFMPEG_CUSTOM_DEMUXER_ape=y CONFIG_FFMPEG_CUSTOM_DEMUXER_flac=y CONFIG_FFMPEG_CUSTOM_DEMUXER_ffm=y CONFIG_FFMPEG_CUSTOM_DEMUXER_h264=y CONFIG_FFMPEG_CUSTOM_DEMUXER_hevc=y CONFIG_FFMPEG_CUSTOM_DEMUXER_matroska=y CONFIG_FFMPEG_CUSTOM_DEMUXER_mov=y CONFIG_FFMPEG_CUSTOM_DEMUXER_mp3=y CONFIG_FFMPEG_CUSTOM_DEMUXER_mpegvideo=y CONFIG_FFMPEG_CUSTOM_DEMUXER_mpegps=y CONFIG_FFMPEG_CUSTOM_DEMUXER_mpegts=y CONFIG_FFMPEG_CUSTOM_DEMUXER_mpc=y CONFIG_FFMPEG_CUSTOM_DEMUXER_mpc8=y CONFIG_FFMPEG_CUSTOM_DEMUXER_ogg=y CONFIG_FFMPEG_CUSTOM_DEMUXER_rm=y CONFIG_FFMPEG_CUSTOM_DEMUXER_rtsp=y CONFIG_FFMPEG_CUSTOM_DEMUXER_sdp=y CONFIG_FFMPEG_CUSTOM_DEMUXER_rtp=y CONFIG_FFMPEG_CUSTOM_DEMUXER_vc1=y CONFIG_FFMPEG_CUSTOM_DEMUXER_wav=y CONFIG_FFMPEG_CUSTOM_DEMUXER_wv=y CONFIG_FFMPEG_CUSTOM_PARSER_aac=y CONFIG_FFMPEG_CUSTOM_PARSER_ac3=y CONFIG_FFMPEG_CUSTOM_PARSER_flac=y CONFIG_FFMPEG_CUSTOM_PARSER_h264=y CONFIG_FFMPEG_CUSTOM_PARSER_hevc=y CONFIG_FFMPEG_CUSTOM_PARSER_mpegaudio=y CONFIG_FFMPEG_CUSTOM_PARSER_mpegvideo=y CONFIG_FFMPEG_CUSTOM_PARSER_mpeg4video=y CONFIG_FFMPEG_CUSTOM_PARSER_opus=y CONFIG_FFMPEG_CUSTOM_PARSER_vc1=y CONFIG_FFMPEG_CUSTOM_PROTOCOL_file=y CONFIG_FFMPEG_CUSTOM_PROTOCOL_http=y CONFIG_FFMPEG_CUSTOM_PROTOCOL_icecast=y CONFIG_FFMPEG_CUSTOM_PROTOCOL_pipe=y CONFIG_FFMPEG_CUSTOM_PROTOCOL_rtp=y CONFIG_FFMPEG_CUSTOM_PROTOCOL_tcp=y CONFIG_FFMPEG_CUSTOM_PROTOCOL_udp=y # CONFIG_PACKAGE_libffmpeg-full is not set # CONFIG_PACKAGE_libffmpeg-mini is not set # CONFIG_PACKAGE_ffmpeg is not set # CONFIG_PACKAGE_ffmpeg-custom is not set
- → Full
.config
.
and that succeeds to build libffmpeg-custom
.
Then, for each of the individual reports here, I have also selected the configuration option(s) mentioned in the individual report.
Packaging libffmpeg-audio-dec
fails to find file ipkg-install/usr/include/libpostproc
.
If I select to build the package libffmpeg-audio-dec
(CONFIG_PACKAGE_libffmpeg-audio-dec=m
) with above configuration,
make -j1 V=sc package/feeds/packages/ffmpeg/compile
fails with:
[...]
cp -fpR /[...]/build_dir/target-aarch64_cortex-a53+neon_musl/ffmpeg-audio-dec/ffmpeg-4.3.4/ipkg-install/usr/include/libpostproc /[...]/tmp/stage-ffmpeg/usr/include/
cp: cannot stat '/[...]/build_dir/target-aarch64_cortex-a53+neon_musl/ffmpeg-audio-dec/ffmpeg-4.3.4/ipkg-install/usr/include/libpostproc': No such file or directory
make[2]: *** [Makefile:804: /[...]/staging_dir/target-aarch64_cortex-a53+neon_musl/stamp/.ffmpeg.audio-dec_installed] Error 1
make[2]: Leaving directory '/[...]/feeds/packages/multimedia/ffmpeg'
time: package/feeds/packages/ffmpeg/audio-dec/compile#0.59#0.18#0.66
ERROR: package/feeds/packages/ffmpeg failed to build (build variant: audio-dec).
[...]
While trying to package, it does not find the file build_dir/target-aarch64_cortex-a53+neon_musl/ffmpeg-audio-dec/ffmpeg-4.3.4/ipkg-install/usr/include/libpostproc
.
"Include ffmpeg command-line utilities" (FFMPEG_CUSTOM_PROGRAMS
) fails with ffserver
binary not found.
The option "Include ffmpeg command-line utilities" (CONFIG_FFMPEG_CUSTOM_PROGRAMS=y
) leads to ffmpeg
package building fail due to missing ffserver
binary:
cp -fpR /[...]/build_dir/target-aarch64_cortex-a53+neon_musl/ffmpeg-custom/ffmpeg-4.3.4/ipkg-install/usr/bin/ffserver /[...]/build_dir/target-aarch64_cortex-a53+neon_musl/ffmpeg-custom/ffmpeg-4.3.4/ipkg-aarch64_cortex-a53_neon/ffserver-custom/usr/bin/
cp: cannot stat '/[...]/build_dir/target-aarch64_cortex-a53+neon_musl/ffmpeg-custom/ffmpeg-4.3.4/ipkg-install/usr/bin/ffserver': No such file or directory
make[2]: *** [Makefile:803: /[...]/bin/packages/aarch64_cortex-a53_neon/packages/ffserver-custom_4.3.4-1_aarch64_cortex-a53_neon.ipk] Error 1
make[2]: Leaving directory '/[...]/feeds/packages/multimedia/ffmpeg'
time: package/feeds/packages/ffmpeg/custom/compile#0.50#0.23#0.63
ERROR: package/feeds/packages/ffmpeg failed to build (build variant: custom).
make[1]: *** [package/Makefile:116: package/feeds/packages/ffmpeg/compile] Error 1
However, selecting "Include support for ffserver (FFmpeg streaming server)" (CONFIG_FFMPEG_CUSTOM_FFSERVER_SUPPORT=y
) does not lead to this error.
Packaging ffmpeg-custom
/ ffprobe-custom
/ ffserver-custom
fails due to missing binaries.
If I select to build the package ffmpeg-custom
(CONFIG_PACKAGE_ffmpeg-custom=m
) with above configuration,
make -j1 V=sc package/feeds/packages/ffmpeg/compile
fails with:
cp -fpR /[...]/build_dir/target-aarch64_cortex-a53+neon_musl/ffmpeg-custom/ffmpeg-4.3.4/ipkg-install/usr/bin/ffmpeg /[...]/build_dir/target-aarch64_cortex-a53+neon_musl/ffmpeg-custom/ffmpeg-4.3.4/ipkg-aarch64_cortex-a53_neon/ffmpeg-custom/usr/bin/
cp: cannot stat '/[...]/build_dir/target-aarch64_cortex-a53+neon_musl/ffmpeg-custom/ffmpeg-4.3.4/ipkg-install/usr/bin/ffmpeg': No such file or directory
make[2]: *** [Makefile:801: /[...]/bin/packages/aarch64_cortex-a53_neon/packages/ffmpeg-custom_4.3.4-1_aarch64_cortex-a53_neon.ipk] Error 1
make[2]: Leaving directory '/[...]/feeds/packages/multimedia/ffmpeg'
time: package/feeds/packages/ffmpeg/custom/compile#0.53#0.20#0.61
ERROR: package/feeds/packages/ffmpeg failed to build (build variant: custom).
Similarly for ffprobe-custom
(CONFIG_PACKAGE_ffprobe-custom=y
) and ffserver-custom
(CONFIG_PACKAGE_ffserver-custom=y
), where the corresponding binaries ipkg-install/usr/bin/ffprobe
anr /ipkg-install/usr/bin/ffserver
, respectively, are missing.
ffmpeg-custom
misses dependencies on libavfilter.so.7
, libpostproc.so.55
and libswresample.so.3
.
I once also had while trying to build the package ffmpeg-custom
(CONFIG_PACKAGE_ffmpeg-custom=m
) with above configuration, that
make -j1 V=sc package/feeds/packages/ffmpeg/compile
failed with:
Package ffmpeg-custom is missing dependencies for the following libraries:
libavfilter.so.7
libpostproc.so.55
libswresample.so.3
This indicates that no package that ffmpeg-custom
depends on packages that libraries, nor does ffmpeg-custom
package them by itself.
But on subsequent tries I don't get those errors anymore, since I get the errors about the missing ffmpeg
binary.
I have done a make ackage/feeds/packages/ffmpeg/clean
from time to time.