Installation on Linux and Unix
  • 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_tmp

    Normally, 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:

    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.

Valid HTML 4.01 Transitional Valid CSS! SourceForge project GStreamer family