Build / Compile Cinelerra

How to Build / Compile Cinelerra

These instructions are for building Cinelerra 4.3 / 4.4 on Ubuntu 12.10 64-bit.  I have had stability issues with Cinelerra 4.4 but your mileage may vary.

Download Cinelerra

Cinelerra is produced by Heroine Warrior is hosted on sourceforge.net.  Here is the direct link to download Cinelerra 4.3.

Unpack the Cinelerra source code

For Cinelerra 4.3:

tar -jxvf cinelerra-4.3-src.tar.bz2
cd cinelerra-4.3

For Cinelerra 4.4:

tar -Jxvf cinelerra-4.4-src.tar.xz
cd cinelerra-4.4

 Install Cinelerra Dependencies

sudo apt-get install linux-headers-generic build-essential yasm zlib1g-dev libpng12-dev gcc-4.6 cpp-4.6 gcc-4.6-base g++-4.6 libstdc++6-4.6-dev libncurses5-dev libx11-dev xserver-xorg-dev libxtst-dev libxv-dev libasound2-dev libbz2-dev

Set up Build Environment for Cinelerra

If you are on Ubuntu 12.10 then the default compiler is GCC 4.7.  This will not compile Cinelerra.  You will need to switch to GCC 4.6.  The following removes GCC 4.7 and switches the default compiler to GCC 4.6

sudo apt-get remove gcc-4.7 cpp-4.7 g++-4.7
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.6 50
sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-4.6 50
sudo update-alternatives --install /usr/bin/cpp cpp /usr/bin/cpp-4.6 50

Configure and Compile Cinelerra

./configure && make

Cinelerra will configure itself and will then build.  This takes a couple hours or longer depending on your machine.  Once Cinelerra is compiled it can be executed from the bin/ directory.

cd bin
./cinelerra

Restore GCC 4.7

To restore GCC 4.7 simply issue the following command:

sudo apt-get install gcc-4.7 cpp-4.7 g++-4.7

Troubleshooting

If you have any trouble compiling, be sure you followed the steps in Install Cinelerra Dependencies and Set up Build Environment for Cinelerra.  Leave a comment below if you are still having trouble.

Compiling Cinelerra fails on GCC 4.7

If you try to compile Cinelerra 4.3 or Cinelerra 4.4 on GCC 4.7 you’ll receive an error similar to the following:

In file included from ../include/EST_THash.h:46:0,
from siod.cc:31:
../include/EST_TIterator.h: In instantiation of ‘EST_TStructIterator<Container, IPointer, Entry>::EST_TStructIterator(const Container&) [with Container = EST_THash<EST_String, EST_Regex*>; IPointer = EST_THash<EST_String, EST_Regex*>::IPointer_s; Entry = EST_Hash_Pair<EST_String, EST_Regex*>]’:
siod.cc:47:3:   required from here
../include/EST_TIterator.h:212:7: error: ‘begin’ was not declared in this scope, and no declarations were found by argument-dependent lookup at the point of instantiation [-fpermissive]
../include/EST_TIterator.h:212:7: note: declarations in dependent base ‘EST_TIterator<EST_THash<EST_String, EST_Regex*>, EST_THash<EST_String, EST_Regex*>::IPointer_s, EST_Hash_Pair<EST_String, EST_Regex*> >’ are not found by unqualified lookup
../include/EST_TIterator.h:212:7: note: use ‘this->begin’ instead
../include/EST_TIterator.h: In instantiation of ‘EST_TRwStructIterator<Container, IPointer, Entry>::EST_TRwStructIterator(Container&) [with Container = EST_THash<EST_String, EST_Regex*>; IPointer = EST_THash<EST_String, EST_Regex*>::IPointer_s; Entry = EST_Hash_Pair<EST_String, EST_Regex*>]’:
siod.cc:47:3:   required from here
../include/EST_TIterator.h:292:7: error: ‘begin’ was not declared in this scope, and no declarations were found by argument-dependent lookup at the point of instantiation [-fpermissive]
../include/EST_TIterator.h:292:7: note: declarations in dependent base ‘EST_TRwIterator<EST_THash<EST_String, EST_Regex*>, EST_THash<EST_String, EST_Regex*>::IPointer_s, EST_Hash_Pair<EST_String, EST_Regex*> >’ are not found by unqualified lookup
../include/EST_TIterator.h:292:7: note: use ‘this->begin’ instead
make[3]: *** [siod.o] Error 1
make[2]: *** [siod] Error 2
make[2]: Leaving directory `/home/jmiller/Downloads/cinelerra-4.3/thirdparty/speech_tools'
make[1]: *** [all] Error 2
make[1]: Leaving directory `/home/jmiller/Downloads/cinelerra-4.3'
make: *** [all] Error 2

Simply follow the directions above to Set up Build Environment for Cinelerra then re-configure and make.

Comments

Leave a Reply

Your email address will not be published. Required fields are marked *