[Cin] Is one pre-built dynamic and static binary for user selection possible?
Terje J. Hanssen
terjejhanssen at gmail.com
Thu Sep 19 18:52:19 CEST 2024
If my understanding is correct, the standard pre-built CinGG packages
are static binaries with all required thirdparty, ffmpeg and libs
included(?)
Would it be possible to combine static and dynamic in one pre-built so
that users via setting could select what they want, ffmpeg and libs
included or from the system?
Or is two different pre-builts required?
Experiences with the latter?
---------
Refer to extracted sections from the CinGG manual Chapter 1 -
Installation below:
If you prefer to not have to take the time to build CINELERRA-GG
Infinity yourself,
there are pre-built dynamic or static binaries for various versions of
Ubuntu, Mint,
Suse, Fedora, Debian ........
The pkgs directory contains the standard packaged application for
various distros.
This will install a dynamic system version for users who prefer to have
the binaries
in the system area
---------
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:
./confgure --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
..........
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:
./confgure --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
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.cinelerra-gg.org/pipermail/cin/attachments/20240919/a3584647/attachment.htm>
More information about the Cin
mailing list