3.2 COMPILING FROM SCRATCH
It should be noted that the compiler used in building Cinelerra binaries is the free GNU compiler and very conservative optimization flags. Alternative optimization flags and compilers produce varying results. Compiling the source is hard and there's no warranty if the source code fails to compile, but the method for compiling starts by downloading the source code and decompressing.
The compilation is verified on a vanilla Fedora 4 installation, workstation mode. Fedora doesn't install a lot of dependancies like nasm and yasm. Yes, 3 assemblers are now required to assemble x86 code. Compiling the source is hard and there's no warranty if the source code fails to compile, but the method for compiling starts by downloading the source code and decompressing.
tar jxf cinelerra*.tar.bz2
The compilation is verified on a Fedora 4 installation. Fedora 4 doesn't install a lot of the reqiured compilers. Mainly nasm and yasm, 2 of the 3 assemblers. These have to be installed manually for compilation to succeed.
Enter the hvirtual directory
This checks the build environment for the right tools and should give you an error if a tool is missing. Once that succeeds run
The make procedure should run through all the directories and put binaries in the i686 or x86_64 directories. When NFS was a lot faster, we compiled Alpha and i686 binaries in the same filesystem with the objects in different subdirectories, so all the binaries are still put in subdirectories.
A lot of libraries are included to get the version numbers right. Some of the libraries don't compile on SMP systems. One solution is to disable SMP when rebooting and reenable it when compilation is finished. Another solution is to rerun make over and over until it gets through the offending libraries.
Once finished, make sure you are root and run
to install the binaries. If installation fails it means something failed to compile or you weren't root. Run make again and watch for errors.
Sometimes you'll want to run make clean if you're programming something or the system libraries change. In this case, you'll probably need to run configure again because some libraries delete their configuration files in make clean.