Skip to content

Latest commit

 

History

History
91 lines (74 loc) · 1.76 KB

building.md

File metadata and controls

91 lines (74 loc) · 1.76 KB

Building Element with Waf

The instructions below are for *nix based system such as Ubuntu. Usage of sudo is optional depending on your system. There are also projucer projects, if you prefer.

Sub Modules This project uses submodules. Be sure to do this on a fresh clone, or when pulling changes.

git submodule update --init

Dependencies

The following packages are needed...

sudo apt-get install python git build-essential pkg-config libboost-dev libfreetype6-dev libx11-dev libxext-dev libxrandr-dev libxcomposite-dev libxinerama-dev libxcursor-dev libasound2-dev lv2-dev liblilv-dev libsuil-dev ladspa-sdk libcurl4-openssl-dev

Optional

Waf will use clang by default if installed

sudo apt-get install clang

Compiling

./waf configure
./waf build

Testing

./waf check

Running

LD_LIBRARY_PATH="`pwd`/build/lib" build/bin/element

Installing

sudo ./waf install
sudo ldconfig

Arch Linux

Install these packages, then run the waf commands described above.

sudo pacman -S git lilv suil lv2 ladspa boost

Mac OSX

Dependencies Install Boost using Homebrew.

brew install boost

If you want LV2 support on OSX, you'll also need....

brew install pkg-config lilv suil

Build

./waf configure
./waf build

This produces build/Applications/Element.app.

# To run it...
open build/Applications/Element.app

Apple Silicon

Replace the ./waf configure command above with this:

./waf configure CPPFLAGS="-I/opt/homebrew/include"

Test

./waf check

Install

./waf install

Install the app to /Applications or another prefix of your choice. see ./waf --help