source: doc/building.rst

Last change on this file was 6f6c336, checked in by Paul Brossier <>, 7 years ago

doc/: add cheat sheet, clean up

  • Property mode set to 100644
File size: 3.1 KB

Building aubio

.. highlight:: bash


To download a prebuilt version of aubio, see :ref:`download`.


aubio uses waf to configure, compile, and test the source. A copy of waf is included in aubio tarball, so all you need is a terminal, a compiler, and a recent version of python installed.


Make sure you have all the :ref:`requirements` you want before building.


Latest release

The latest stable release can be downloaded from

$ curl -O<version>.tar.bz2
$ tar xf aubio-<version>.tar.bz2
$ cd aubio-<version>/

Git repository

The latest git branch can be obtained with:

$ git clone git://
$ cd aubio/

The following command will fetch the correct waf version (not included in aubio's git):

$ ./scripts/


Windows users without Git Bash installed will want to use the following commands instead:

$ curl -fsS -o waf
$ curl -fsS -o waf.bat


To compile the C library, examples programs, and tests, run:

$ ./waf configure

Check out the available options using ./waf configure --help. Once you are done with configuration, you can start building:

$ ./waf build

To install the freshly built C library and tools, simply run the following command:

$ sudo ./waf install


Windows users should simply run waf, without the leading ./. For instance:

$ waf configure build

Running as a user

To use aubio without actually installing, for instance if you don't have root access to install libaubio on your system,

On Linux or macOS, sourcing the script scripts/ should help:

$ source ./scripts/

This script sets LD_LIBRARY_PATH, for libaubio, and PYTHONPATH for the python module.

On Linux, you should be able to set LD_LIBRARY_PATH with:


On Mac OS X, a copy or a symlink can be made in ~/lib:

$ mkdir -p ~/lib
$ ln -sf $PWD/build/src/libaubio*.dylib ~/lib/

Note on Mac OS X systems older than El Capitan (10.11), the DYLD_LIBRARY_PATH variable can be set as follows:



If you wish to uninstall the files installed by the install command, use uninstall:

$ sudo ./waf uninstall

To clean the source directory, use the clean command:

$ ./waf clean

To also forget the options previously passed to the last ./waf configure invocation, use the distclean command:

$ ./waf distclean
.. include:: xcode_frameworks.rst
.. include:: android.rst
Note: See TracBrowser for help on using the repository browser.