[FFmpeg-user] install on centos fail

jacky renaux renaux.jacky at orange.fr
Wed Aug 5 12:08:13 EEST 2020



Le 04/08/2020 à 20:00, Reindl Harald a écrit :
> [root at buildserver:~]$ cat /rpmbuild/SPECS/ffmpeg-latest.spec
> #############################################################################################################################
> # command 'rpmbuild -bb ffmpeg-latest.spec --with production' will tune
> for current hardware while default stays compatible #
> #############################################################################################################################
>
> %global ffmpeg_snapshot 20200714
> %global x264_snapshot   20200311
> %global x264_version    0.158.0000
> %global pgo_build       1
>
> %if %{?_with_production:1}%{!?_with_production:0}
>   %global rpmsuffix native
>   %global build_native_release 1
>   %global optflags $(sed "s/sandybridge/native/g" <<< "%{optflags}")
> %else
>   %global rpmsuffix %{mtune2}
>   %global build_native_release 0
>   %global optflags $(sed "s/sandybridge/%{mtune2}/g" <<< "%{optflags}")
> %endif
>
> Summary:           Hyper fast Audio and Video encoder (static build)
> Name:              ffmpeg-latest
> Version:           4.3.1
> Release:
> 1.%{build_native_release}%{?dist}.x264.%{x264_version}.%{rpmsuffix}
> License:           GPLv3+
> URL:http://ffmpeg.org/
> Source0:           ffmpeg-%{ffmpeg_snapshot}.tar.xz
> Source1:           x264-%{x264_snapshot}.tar.xz
> Source2:           ffmpeg-snapshot-latest.sh
> Source3:           x264-snapshot-latest.sh
> Source4:           720x400.yuv
> BuildRequires:     bzip2-devel
> BuildRequires:     imlib2-devel
> BuildRequires:     lame-devel
> BuildRequires:     libtheora-devel
> BuildRequires:     libvpx-devel
> BuildRequires:     openssl-devel
> BuildRequires:     x265-devel
> BuildRequires:     nasm
> BuildRequires:     yasm
> BuildRequires:     zlib-devel
> Provides:          ffmpeg
>
> %description
> A complete, cross-platform solution to record, convert and stream audio
> and video
>
> %package           manpages
> Summary:           Manpages for ffmpeg-latest
> BuildArch:         noarch
> %description       manpages
>
> %prep
> %setup -q -n ffmpeg-%{ffmpeg_snapshot}
>
> %build
> # build x264-static with profile-guided-optimization for current
> architecture
> tar xJf %{SOURCE1}
> pushd x264-%{x264_snapshot}
> ./configure \
>   --prefix=/rpmbuild/BUILD/ffmpeg-%{ffmpeg_snapshot} \
>   --exec-prefix=/rpmbuild/BUILD/ffmpeg-%{ffmpeg_snapshot}/x264-static \
>   --bindir=/rpmbuild/BUILD/ffmpeg-%{ffmpeg_snapshot}/x264-static \
>   --libdir=/rpmbuild/BUILD/ffmpeg-%{ffmpeg_snapshot}/x264-static \
>   --includedir=/rpmbuild/BUILD/ffmpeg-%{ffmpeg_snapshot}/x264-static \
>   --extra-cflags="%{optflags} %{O3_flags} -w" \
>   --extra-ldflags="-Wl,--as-needed -Wl,-z,now -Wl,-z,relro
> -Wl,-z,noexecstack %{optflags} %{O3_flags} -w" \
>   --enable-static \
>   --enable-pic \
>   --enable-strip \
>   --disable-avs \
>   --disable-cli \
>   --disable-ffms \
>   --disable-gpac \
>   --disable-lavf \
>   --disable-opencl \
>   --disable-swscale
> %if %pgo_build
>   make fprofiled VIDS="%{SOURCE4}" %{?_smp_mflags}
> %else
>   make %{?_smp_mflags}
> %endif
> make install
> strip --strip-unneeded --strip-debug
> /rpmbuild/BUILD/ffmpeg-%{ffmpeg_snapshot}/x264-static/libx264.a
> popd
> # build ffmpeg-static and link with x264-static from previous build
> mkdir generic
> pushd generic
> ../configure \
>   --prefix=%{_prefix}/local \
>   --bindir=%{_prefix}/local/bin \
>   --mandir=%{_prefix}/local/man \
>   --extra-cflags="-I/rpmbuild/BUILD/ffmpeg-%{ffmpeg_snapshot}/x264-static
> %{optflags} %{O3_flags} -flto=%(nproc) -ffat-lto-objects -fwhole-program
> -w" \
>   --extra-ldflags="-I/rpmbuild/BUILD/ffmpeg-%{ffmpeg_snapshot}/x264-static -L/rpmbuild/BUILD/ffmpeg-%{ffmpeg_snapshot}/x264-static -ldl -Wl,--as-needed -Wl,-z,now -Wl,-z,relro %{optflags} %{O3_flags} -flto=%(nproc) -ffat-lto-objects -fwhole-program -pie -fPIE -w" \
>   --ar=gcc-ar \
>   --ranlib=true \
>   --enable-lto \
>   --enable-gpl \
>   --enable-libmp3lame \
>   --enable-libtheora \
>   --enable-libvpx \
>   --enable-libx264 \
>   --enable-libx265 \
>   --enable-nonfree \
>   --enable-openssl \
>   --enable-pic \
>   --enable-runtime-cpudetect \
>   --enable-static \
>   --enable-version3 \
>   --disable-amf \
>   --disable-appkit \
>   --disable-autodetect \
>   --disable-avdevice \
>   --disable-avfoundation \
>   --disable-coreimage \
>   --disable-debug \
>   --disable-devices \
>   --disable-ffplay \
>   --disable-ffprobe \
>   --disable-htmlpages \
>   --disable-hwaccels \
>   --disable-iconv \
>   --disable-libdc1394 \
>   --disable-libfreetype \
>   --disable-libgsm \
>   --disable-libopencore-amrnb \
>   --disable-libopencore-amrwb \
>   --disable-libopencv \
>   --disable-libopenjpeg \
>   --disable-libopus \
>   --disable-librtmp \
>   --disable-libspeex \
>   --disable-libvorbis \
>   --disable-libxcb \
>   --disable-libxcb-shape \
>   --disable-libxcb-shm \
>   --disable-libxcb-xfixes \
>   --disable-libxvid \
>   --disable-podpages \
>   --disable-postproc \
>   --disable-protocol=gopher \
>   --disable-shared \
>   --disable-txtpages \
>   --disable-xlib
> %{__make} %{?_smp_mflags}
> make documentation
> popd
>
> %install
> pushd generic
> make install DESTDIR=%{buildroot}
> popd
> mkdir %{buildroot}%{_bindir}
> ln -s %{_prefix}/local/bin/ffmpeg %{buildroot}%{_bindir}/ffmpeg
> rm -rf %{buildroot}%{_prefix}/local/include
> %{buildroot}%{_prefix}/local/lib %{buildroot}%{_prefix}/local/lib64
> %{buildroot}%{_prefix}/local/share
> strip --strip-unneeded %{buildroot}%{_prefix}/local/bin/ffmpeg
>
> %files
> %{_prefix}/local/bin/ffmpeg
> %{_bindir}/ffmpeg
>
> %files manpages
> %{_prefix}/local/man/man1/*
> %{_prefix}/local/man/man3/*
>
> %changelog
> * Tue Jul 14 2020 Reindl Harald<h.reindl at thelounge.net>
> - update to 4.3.1
hI ? as you might know due to the coronavirus, universities are closed 
and in France it is vacation period . I am not a system engineer just a 
ffmpeg user . I cannot get system eng support at a present time and do 
prepar the september time where we will need visio conférences. I am a 
old retired guy "working " in a non profit organisation tight to an 
university. I do not have the background you have this is why I tried to 
compile in $HOME just to not kill what as been done by "professionnal" 
(who are not available to provide support at a present time) . When a 
correct install will be done and tested I was planned to redo it in a 
normal way.
Presently ffmpeg is running fine and up to date but only the x264 and 
ACC are installed and tried to add libvpx and opus as webm seems more 
easy to record a streaming live.
I was expected unix install less complicated then I will wait until 
system eng will be back from vacation.
You all are doing a great job to support us, but you might undestand 
which nobody is fluent in every domains (in my case domains have a lot 
of ending sssssss)

again thanks for support and you can close this ticket
regards
Jacky





More information about the ffmpeg-user mailing list