After getting the generic built environment for Cingg on
openSUSE-Slowroll in place, it's time to continue with the steps to
get Cingg built from git using the system FFmpeg and libs.
First a reference to and from the previous thread
https://lists.cinelerra-gg.org/pipermail/cin/2024-September/008652.html
----------------
from the manual 1.3.8 Unbundled Builds
"There are some generic build scripts included in the CINELERRA-GG
GIT repository
for users who want to do unbundled builds with ffmpeg already
available on their
system. This has been tested on Arch, Ubuntu 18, FreeBSD, Windows10
and Leap
15 (rpm) at the time this was documented. The names of the build
scripts are:
arch.bld, bsd.bld, deb.bld, rpm.bld, and cygwin.bld. These scripts
are in
the blds subdirectory."
from 1.3.3 in the manual):
Notes about Building from Git in your Customized Environment
Getting a build to work in a custom environment is not easy. If you
have already installed libraries which are normally in the
thirdparty build, getting them to be recognized means you have to
install the devel version so the header files which match the
library interfaces exist. If you want to build using only the
thirdparty libraries installed in your system, just include
"–without-thirdparty" to your configure script. For example:
./configure --with-single-user --disable-static-build
--without-thirdparty
Below is the list of thirdparty builds, but this list may have
changed over time.
Table 1.1: List of thirdparty builds
a52dec
yes
djbfft yes
ffmpeg yes
fftw auto
flac auto
giflib yes
ilmbase auto
lame auto
libavc1394 auto
libraw1394 auto
libiec61883 auto
libdv auto
.......snip
The yes means force build and auto means probe and use the system
version if the build operation is not static. To get your customized
build to work, you need to change the probe options for the
conflicting libraries from yes to auto, or even rework the
configure.ac script. There may be several libraries which need
special treatment.
An example of a problem you might encounter with your customized
installation is with a52dec which has probes line
(CHECK_LIB/CHECK_HEADERS) in
configure.ac, but djbfft does not. In
this case, djbfft is only built because a52dec is built, so if your
system has a52dec, set a52dec to auto and see if that problem is
solved by retrying the build with:
./configure
--with-single-user -enable-a52dec=auto .
With persistence, you can get results, but it may take several tries
to stabilize the build. If you need help, email the log and
config.log, which is usually sufficient to determine why a build
failed.
If you have already installed the libfdk_aac development package on
your computer because you prefer this version over the default aac,
you will have to do the following to get this alternative
operational. The libfdk_aac library is not a part of CINELERRA-GG by
default because it is not license free.
export
FFMPEG_EXTRA_CFG=" --enable-libfdk-aac --enable-nonfree"
export EXTRA_LIBS=" -lfdk-aac"
for f in `grep -lw aac cinelerra-5.1/ffmpeg/audio/*`; do
sed -e 's/\<aac\>/libfdk_aac/' -i $f
done
--------------
FFmpeg from Packman (thirdparty for Slowroll) has the following
capabilities enabled and typical Hwaccel methods available:
ffmpeg -hwaccels
ffmpeg version 7.0 Copyright (c) 2000-2024 the FFmpeg developers
built with gcc 14 (SUSE Linux)
configuration: --prefix=/usr --libdir=/usr/lib64
--shlibdir=/usr/lib64 --incdir=/usr/include/ffmpeg
--extra-cflags='-O2 -Wall -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=3
-fstack-protector-strong -funwind-tables
-fasynchronous-unwind-tables -fstack-clash-protection
-Werror=return-type -flto=auto -ffat-lto-objects -g'
--optflags='-O2 -Wall -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=3
-fstack-protector-strong -funwind-tables
-fasynchronous-unwind-tables -fstack-clash-protection
-Werror=return-type -flto=auto -ffat-lto-objects -g'
--disable-htmlpages --enable-pic --disable-stripping
--enable-shared --disable-static --enable-gpl --enable-version3
--enable-libsmbclient --disable-openssl --enable-gnutls
--enable-ladspa --enable-libshaderc --enable-vulkan
--enable-libplacebo --enable-libaom --enable-libass
--enable-libbluray --enable-libbs2b --enable-libcdio
--enable-libcodec2 --enable-libdav1d --enable-libdc1394
--enable-libdrm --enable-libfontconfig --enable-libfreetype
--enable-libfribidi --enable-libgsm --enable-libjack
--enable-libjxl --enable-librist --enable-libmp3lame
--enable-libmysofa --enable-libopenjpeg --enable-libopenmpt
--enable-libopenh264-dlopen --enable-libopus --enable-libpulse
--enable-librav1e --enable-librubberband --enable-libsvtav1
--enable-libsoxr --enable-libspeex --enable-libssh --enable-libsrt
--enable-libtheora --enable-libtwolame --enable-libvidstab
--enable-libvmaf --enable-libvorbis --enable-libvpx
--enable-libwebp --enable-libxml2 --enable-libzimg --enable-libzmq
--enable-libzvbi --enable-lto --enable-lv2 --enable-libvpl
--enable-vaapi --enable-vdpau --enable-version3
--enable-libfdk-aac-dlopen --enable-nonfree
--enable-libopencore-amrnb --enable-libopencore-amrwb
--enable-libvo-amrwbenc --enable-libx264 --enable-libx265
--enable-libxvid
libavutil 59. 8.100 / 59. 8.100
libavcodec 61. 3.100 / 61. 3.100
libavformat 61. 1.100 / 61. 1.100
libavdevice 61. 1.100 / 61. 1.100
libavfilter 10. 1.100 / 10. 1.100
libswscale 8. 1.100 / 8. 1.100
libswresample 5. 1.100 / 5. 1.100
libpostproc 58. 1.100 / 58. 1.100
Hardware acceleration methods:
vdpau
cuda
vaapi
qsv
drm
vulkan
-------------------
Suggestions to modified/additional procedure steps to build Cingg
from git using the system FFmpeg and libs
continued from the previous thread?
https://lists.cinelerra-gg.org/pipermail/cin/2024-September/008655.html