- Table of content
- Requirements
Avisynth 3.0 needs several libraries to be compiled. Usually, these libraries can be installed with the package manager of your distributions. But in case you prefer installing them from the source code, or if some packages are not provided by your distribution, we give all the informations to compile these libraries. First, here are the requirements:
- STLport 5.1.0 (another port of the STL (Standard Template Library))
- Boost 1.33.1 (set of libraries written in C++, highly templated, used for the shared pointers, the thread library and a powerful parser named 'spirit')
- Freetype 2.3.1 or later (font engine that produces high quality output)
- Fontconfg 2.4.2 (library for font customization and configuration)
- Gstreamer 0.10.11 or later (library that allows the construction of graphs of media-handling components. Used for importing video and audio files for now)
- Nasm (optional) (the famous Netwide Assembler)
In this document, we will install the latest versions of all the previous libraries (as when this document has been written). We will download them in the directory avs3_tmp that we will create in the home directory:
cd
mkdir avs3_tmpNormally, you'll only need to use the command that are in the boxes, like the one just above. Download the following files in the avs3_tmp directory:
- STLport 5.1.2
- Boost 1.33.1
- bjam 3.1.13 (tool similar to make)
- Freetype 2.3.1
- Fontconfig 2.4.2
- liboil 0.3.10
- Gstreamer 0.10.12
- Gst-Plugins-Base 0.10.12
- Gst-Plugins-Good 0.10.5
- Gst-Plugins-Bad 0.10.4
- Gst-Plugins-Ugly 0.10.5
- Gst-FFmpeg 0.10.2
- Nasm 0.98.39
Note: the bjam archive above will extract a platform dependant program (here, it's a program compiled for linux). You can find more dependant architecture programs here.
Note: If your distribution can install those dependancies with packages, do not forget to install the development packages (usually, they contain -dev in their name).
- Installation of STLport 5.1.0
We are going to install STLport in the /usr/local directory:
cd avs3_tmp
tar jxvf STLport-5.1.2.tar.bz2
cd STLport-5.1.2/build/lib
make -f gcc.mak depend
make -f gcc.mak
make -f gcc.mak install
The libraries are located in STLport-5.1.2/lib and the header files are located in STLport-5.1.2/stlport. We must copy them manually:
cd ../..
su (give your root password)
cp lib/libstlport* /usr/local/lib/
cp -R stlport /usr/local/include/
[ctrl-D] (to return to user mode)If you want to install STLport in another directoy, change /usr/local with another directory.
- Installation of Boost 1.33.1
We are going to install Boost with the bjam utility in the /usr/local directory:
cd
cd avs3_tmp
tar jxvf boost_1_33_1.tar.bz2
tar zxvf boost-jam-3.1.13-1-linuxx86.tgz
cd boost_1_33_1
su (give your root password)
../boost-jam-3.1.13-1-linuxx86/bjam "-sTOOLS=gcc-stlport" -sSTLPORT_PATH="/usr/local/include/stlport/" -sSTLPORT_VERSION="5.1.0" --prefix=/usr/local --with-thread install
[ctrl-D] (to return to user mode)If you want to install Boost in another directoy, change the value of --prefix. If STLport is not installed in the /usr/local directory, change the value of -sSTLPORT_PATH.
- Installation of Freetype 2.3.1
We are going to install Freetype in the /usr/local directory:
cd
cd avs3_tmp
tar jxvf freetype-2.3.1.tar.bz2
cd freetype-2.3.1
./configure --prefix=/usr/local
make
su (give your root password)
make install
[ctrl-D] (to return to user mode)If you want to install Freetype in another directoy, change the value of --prefix.
- Installation of Fontconfig 2.4.2
We are going to install Fontconfig in the /usr/local directory:
cd
cd avs3_tmp
tar zxvf fontconfig-2.4.2.tar.gz
cd fontconfig-2.4.2
./configure --prefix=/usr/local
make
su (give your root password)
make install
[ctrl-D] (to return to user mode)If you want to install Fontconfig in another directoy, change the value of --prefix.
- Installation of Gstreamer 0.10
The installation of Gstreamer needs liboil, which implement several optimized functions that are helpful in video and audio. Then we will install Gstreamer and Gst-Plugins-Base. These are the only needed requirements. Nevertheless, we will not be able to read a lot of formats. For that, Gst-Plugins-Good, Gst-Plugins-Bad, Gst-Plugins-Ugly and Gst-FFmpeg are highly recommanded.
We begin with liboil:
cd
cd avs3_tmp
tar zxvf liboil-0.3.10.tar.gz
cd liboil-0.3.10
./configure --prefix=/usr/local
make
su (give your root password)
make install
[ctrl-D] (to return to user mode)If you want to install liboil in another directoy, change the value of --prefix.
We now install Gstreamer:
cd ../
tar jxvf gstreamer-0.10.12.tar.bz2
cd gstreamer-0.10.12
./configure --prefix=/usr/local
make
su (give your root password)
make install
[ctrl-D] (to return to user mode)If you want to install Gstreamer in another directoy, change the value of --prefix.
We install Gst-Plugins-Base:
cd ../
tar jxvf gst-plugins-base-0.10.12.tar.bz2
cd gst-plugins-base-0.10.12
./configure --prefix=/usr/local
make
su (give your root password)
make install
[ctrl-D] (to return to user mode)If you want to install Gst-Plugins-Base in another directoy, change the value of --prefix.
We install Gst-Plugins-Good:
cd ../
tar jxvf gst-plugins-good-0.10.5.tar.bz2
cd gst-plugins-good-0.10.5
./configure --prefix=/usr/local
make
su (give your root password)
make install
[ctrl-D] (to return to user mode)If you want to install Gst-Plugins-Good in another directoy, change the value of --prefix.
We install Gst-Plugins-Bad:
cd ../
tar jxvf gst-plugins-bad-0.10.4.tar.bz2
cd gst-plugins-bad-0.10.4
./configure --prefix=/usr/local
make
su (give your root password)
make install
[ctrl-D] (to return to user mode)If you want to install Gst-Plugins-Bad in another directoy, change the value of --prefix.
We install Gst-Plugins-Ugly:
cd ../
tar jxvf gst-plugins-ugly-0.10.5.tar.bz2
cd gst-plugins-ugly-0.10.5
./configure --prefix=/usr/local
make
su (give your root password)
make install
[ctrl-D] (to return to user mode)If you want to install Gst-Plugins-Ugly in another directoy, change the value of --prefix.
We finally install Gst-FFmpeg:
cd ../
tar jxvf gst-ffmpeg-0.10.2.tar.bz2
cd gst-ffmpeg-0.10.2
./configure --prefix=/usr/local
make
su (give your root password)
make install
[ctrl-D] (to return to user mode)If you want to install Gst-FFmpeg in another directoy, change the value of --prefix.
- Installation of nasm
We are going to install nasm in the /usr/local directory:
cd ../
tar jxvf nasm-0.98.39.tar.bz2
cd nasm-0.98.39
./configure --prefix=/usr/local
make
su (give your root password)
make install
[ctrl-D] (to return to user mode)If you want to install nasm in another directoy, change the value of --prefix.
- Compilation of Avisynth 3.0
We need the source code of Avisynth 3.0. It's only avalaible froms cvs, on SourceForge. Just do that:
cd ../
cvs -z3 -d:pserver:anonymous@avisynth2.cvs.sourceforge.net:/cvsroot/avisynth2 login
cvs -z3 -d:pserver:anonymous@avisynth2.cvs.sourceforge.net:/cvsroot/avisynth2 co -r avisynth_3_0 avisynth
Avisynth 3.0 needs an extension of Boost that is not in the current version of Boost. Nevertheless, we have included it in our tree. Here is how to install it if Boost is installed in usr/local:
cd avisynth/build
tar jxvf circular_buffer_v3.7.tar.bz2
cd circular_buffer
su (give your root password)
cp -R circular_buffer* /usr/local/include/boost-1_33_1/boost
[ctrl-D] (to return to user mode)If you have installed Boost in an other directory than usr/local, replace usr/local by the correct directory.
Now, we compile Avisynth 3.0 ! Type:
cd ../linux
./booststrap.sh
./configure
make
su (give your root password)
make install
[ctrl-D] (to return to user mode) - Configuration options
It is possible to give some options to the configure script, for several purposes. For example:
- If some libraries, installed by a stupid package manager, are not installed in a correct location, or even if it has changed the name of the library.
- If you want to compile Avisynth 3.0 in debug mode.
In any case, use ./configure --help to have a list of all the available options.