Instructions for Building on Linux

Fuller instructions that cover:
    * Upgrading to gcc 4.9 on older Ubuntus
    * Optional libraries
can be found on our wiki at http://wiki.audacityteam.org/wiki/Building_On_Linux.

In fact for Audacity 2.4.0 you should read those
instructions rather than these ones, since we switched to 
CMake for building Audacity itself for 2.4.0

Some prerequisites:

- Audacity requires gcc 4.9 or later to build.

- CMake ( http://www.cmake.org/ ) is required to build the local copy of 
  the libsoxr resampling library used by Audacity.

On a modern Debian distro, e.g. Ubuntu 16.04 (bionic), you would do:

sudo apt-get install build-essential cmake

- libasound and gtk are required. Having gtk2 and gtk3 too  
  may not be required, but compilation works if both are.

- Auto-tools are also needed.

sudo apt-get install libasound2-dev libgtk2.0-dev libgtk-3-dev
sudo apt-get install autoconf automake

- Since you will be fetching code from git repositories you 
  will need git.

sudo apt-get install git git-gui gitk


wxWidgets:

 1) Clone wxWidgets and checkout 3.1.1 from the Audacity fork of the 
    wxWidgets project: 
       https://github.com/audacity/wxWidgets/....

    for example
      mkdir ./wxWidgets
      cd ./wxWidgets
      git clone --recurse-submodules https://github.com/audacity/wxWidgets/

    Don't be tempted to use Widgets already installed on Linux because this 
    will typically be a different version and will cause problems.              

    IF you forgot the --recurse-submodules, you can correct that later by:
      git submodule update --init

  2) Follow instructions for building at 
    https://github.com/audacity/wxWidgets/blob/v3.1.1/docs/gtk/install.txt

    So...

    mkdir buildgtk
    cd buildgtk
    ../configure --with-gtk
    make    

  3) Having got this far, it is well worth trying out building some wxWidgets
    examples to confirm that building has worked OK

Audacity:

These are old instructions.  See our wiki and use 
CMake for 2.4.0 and later, rather than as here automake.

  1) Create a 'build' subdirectory under Audacity and change to it.

  2) Now to build Audacity itself.  
    Using a build directory (and .. in the command) keeps source and object files
    in separate directories.

    ../configure --with-lib-preference="local system"

    make
    make install  # as root
