Installing Audacity SVN on Ubuntu 14.0.4 from scratch

Building and customizing Audacity from the source code.
Forum rules
If you require help using Audacity, please post on the forum board relevant to your operating system:
Windows
Mac OS X
GNU/Linux and Unix-like
Post Reply
steve
Site Admin
Posts: 47968
Joined: Sat Dec 01, 2007 11:43 am
Operating System: Linux *buntu
Contact:

Installing Audacity SVN on Ubuntu 14.0.4 from scratch

Post by steve » Wed May 14, 2014 10:39 pm

Note that these instructions are for advanced users and not intended for general use.
installing the Audacity development code is not recommended for a production environment.


Linux users should usually use the version of Audacity that is shipped with their distribution.
For production work, if you require the latest version of Audacity, please use the official release tarball, available here: http://audacityteam.org/download/source and the installation instructions on the Audacity wiki: http://wiki.audacityteam.org/wiki/Compi ... rBeginners


Installing Audacity SVN (alpha) on Ubuntu 14.04, from scratch.
This is a step-by-step guide to installing the current development code on Ubuntu 14.04 (the latest release version of Ubuntu at time of writing).
The step descriptions assume basic familiarity with computers and using Linux, including a basic understanding of entering commands via a terminal window.

The steps below are for a full installation of Audacity, including optional support for MP3 encoding.
Note that FfMpeg is not currently supported because Ubuntu 14.04 does not include FfMpeg in its repository. I'll add some work-around options later when/if I have time ;)
  • Install Desktop Ubuntu 14.04. (http://www.ubuntu.com/download/desktop/ ... tu-desktop)
    • Enable 3rd party software (or enable 3rd party sources after installation).
    • Download updates (optional but it probably saves time and bandwidth to do it now).
  • Run "Software Updater" to bring the installation up to date (should be much quicker [less slow] if "Download Updates" was enabled during installation).
  • Check your video card drivers. By default Ubuntu makes heavy use of graphics acceleration, which can cause extremely poor performance if your video card drivers are flaky. Proprietary drivers are available for many video cards and will often provide better performance than their open source alternatives.
    • There are many other optimisations and customizations that can make a huge performance difference. Google is your friend ;)
Check that Ubuntu is working correctly, including sound, before continuing.

Installing prerequisite packages:

To download a local copy of the SVN source code you will need to install Subversion:

Code: Select all

sudo apt-get install subversion 
To install the necessary dependencies:

Code: Select all

sudo apt-get build-dep audacity 
Download ("checkout") the Audacity SVN source code:

Code: Select all

svn checkout http://audacity.googlecode.com/svn/audacity-src/trunk/ audacity-read-only 
"audacity-read-only" is the name of the folder that the source tree will be downloaded into. It can be any valid folder for which you have full read/write/execute permission, so usually you would choose your home folder or a subdirectory of your home folder.

When the download is complete, change to the new folder:

Code: Select all

cd audacity-read-only
Building Audacity:

The first task is to configure the build. This is mostly automatic, though because FFmpeg is not available we will configure the build without FFmpeg support:

Code: Select all

./configure --without-ffmpeg
Have a look through the end of the output. It should look very much like:

Code: Select all

configure: ---------------------------------------
configure: Including support for OSS
configure: Including support for ALSA
configure: ---------------------------------------
checking that generated files are newer than configure... done
configure: creating ./config.status
config.status: creating Makefile
config.status: creating px_tests/Makefile
config.status: creating src/Makefile
config.status: executing depfiles commands
config.status: executing libtool commands

Finished configure:
EXPAT: using SYSTEM libraries
FFMPEG: disabled
LAME: using SYSTEM libraries
LIBFLAC: using SYSTEM libraries
LIBID3TAG: using SYSTEM libraries
LIBMAD: using SYSTEM libraries
LIBNYQUIST: using LOCAL libraries
LIBRESAMPLE: disabled
LIBSAMPLERATE: disabled
LIBSBSMS: using SYSTEM libraries
LIBSNDFILE: using SYSTEM libraries
LIBSOUNDTOUCH: using SYSTEM libraries
LIBSOXR: using SYSTEM libraries
LIBTWOLAME: using SYSTEM libraries
LIBVAMP: using SYSTEM libraries
LIBVORBIS: using SYSTEM libraries
LV2: using LOCAL libraries
PORTAUDIO: using SYSTEM libraries
PORTSMF: using SYSTEM libraries
WIDGETEXTRA: using LOCAL libraries
ladspa: enabled
audiounits: disabled
prefix=/usr/local/

Run 'configure --help' for an explanation of these options,
otherwise run 'make' to build Audacity.
If there are problems (for example, it does not complete successfully, or support for ALSA is missing) then the configure can be "undone" with:

Code: Select all

make distclean
and then run again with the output recorded in a file:

Code: Select all

./configure --without-ffmpeg 2>&1 | tee MyConfigureLogFile.txt
and the output will be redirected to: "MyConfigureLogFile.txt"
Note that .configure makes a "config.log" file without this additional log, so avoid using that as the file name.

Now time to build. This can take a while:

Code: Select all

make
Again, if there are problems this can be undone.
To undo just the "make":

Code: Select all

make clean
To undo the "make" and the "./configure"

Code: Select all

make distclean
Running make with full logging:

Code: Select all

make 2>&1 | tee MyBuildLogFile.txt 
If the build completes successfully Audacity can then be launched with:

Code: Select all

./src/audacity
Audacity could then be installed, but as this is not intended to be for production work it may be better not to ;)


Building optional modules:
These modules are not currently included in the release version and currently should be considered "experimental". They are not guaranteed to work and may expose security vulnerabilities.

In the /lib-src folder are a few optional modules:
mod-nyq-bench http://wiki.audacityteam.org/wiki/Nyqui ... _Workbench
mod-script-pipe http://manual.audacityteam.org/o/man/scripting.html
mod-track-panel ???
mod-null ???

Both mod-nyq-bench and mod-script-pipe should build in much the same way:

Building mod-nyq-bench:
Change to the mod-nyq-bench directory:

Code: Select all

cd lib-src/mod-nyq-bench
and build it:

Code: Select all

make
There's not much output, just;

Code: Select all

g++ -Wall -O9 -DAUDACITY_DLL_API= -I../../src    -Wall -pthread -I/usr/include/gtk-2.0 -I/usr/lib/i386-linux-gnu/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/pango-1.0 -I/usr/include/gio-unix-2.0/ -I/usr/include/freetype2 -I/usr/include/glib-2.0 -I/usr/lib/i386-linux-gnu/glib-2.0/include -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/harfbuzz   -I../../lib-src/portmixer/include   -Wall -I../../lib-src/FileDialog                  -I../../lib-src/libnyquist -I/usr/lib/i386-linux-gnu/wx/include/gtk2-unicode-release-2.8 -I/usr/include/wx-2.8 -D_FILE_OFFSET_BITS=64 -D_LARGE_FILES -D__WXGTK__ -pthread -fPIC   -c -o NyqBench.o NyqBench.cpp
g++ -ldl   -lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lgio-2.0 -lpangoft2-1.0 -lpangocairo-1.0 -lgdk_pixbuf-2.0 -lcairo -lpango-1.0 -lfontconfig -lgobject-2.0 -lglib-2.0 -lfreetype   -lasound -ljack -lpthread   -lrt -shared -o mod-nyq-bench.so NyqBench.o

mod-nyq-bench.so has been copied to ../../modules
On restarting Audacity, the "Nyquist Workbench" should now be listed in the View menu.
Last edited by steve on Fri Apr 24, 2015 4:35 pm, edited 2 times in total.
Reason: cd is required to change directory
9/10 questions are answered in the FREQUENTLY ASKED QUESTIONS (FAQ)

Gale Andrews
Quality Assurance
Posts: 26087
Joined: Fri Jul 27, 2007 12:02 am
Operating System: Windows 10
Contact:

Re: Installing Audacity SVN on Ubuntu 14.0.4 from scratch

Post by Gale Andrews » Wed May 14, 2014 10:57 pm

steve wrote:Note that FFmpeg is not currently supported because Ubuntu 14.04 does not include FFmpeg in its repository. I'll add some work-around options later when/if I have time ;)
There are links here for the two workarounds I know:
These links will appear in the Manual for the next (2.0.6) release of Audacity.


Gale
________________________________________FOR INSTANT HELP: (Click on Link below)
* * * * * Tips * * * * * Tutorials * * * * * Quick Start Guide * * * * * Audacity Manual

Post Reply