Building
You may build plugins from scratch.
For successful build you need the following packages to be installed:
- gcc >= 4.7
- gcc-c++ >= 4.7
- libgcc_s1 >= 5.2
- libstdc++-devel >= 4.7
- jack-devel >= 1.9.5
- lv2-devel >= 1.10
- ladspa-devel >= 1.13
- libexpat-devel >= 2.1
- libsndfile-devel >= 1.0.25
- libcairo-devel >= 1.14
- php >= 5.5.14
For development, additional packages are required to be installed:
- glu-devel >= 9.0.0
- libGL-devel >= 11.2.2
Currently there is no automake/CMake supported, so to build plugins you have to type:
make clean make make install
By default, all supported formats of plugins are built. You may control list of built plugin formats by specifying BUILD_MODULES variable:
make clean make BULD_MODULES='lv2 vst doc' make install
Available modules are:
- ladspa - LADSPA plugin binaries
- lv2 - LV2 plugin binaries
- vst - LinuxVST plugin binaries
- jack - JACK plugin binaries
- doc - HTML documentation
Also possible (but not recommended) to specify compile targets:
make clean make build_ladspa make build_lv2 make build_vst make build_jack make build_doc
By default plugins use '/usr/local' path as installation directory. To override this path, you can run build with specifying PREFIX variable:
make clean make PREFIX=/usr make install
By default, 'make install' will install all plugin formats (LADSPA, LV2, LinuxVST, JACK) and documentation. To install them separately, you can issue following commands:
make clean make make install_ladspa make install_lv2 make install_vst make install_jack make install_doc
To build binaries for debugging/profiling, use the following commands:
make clean make profile
To build binaries for testing (developers only), use the following commands:
make clean make test
You may also specify the installation root by specifying DESTDIR attribute:
make install DESTDIR=<installation-root>
To perform cross-building between different architectures, you first should have a corresponding toolchain. By default, LSP plugins use 'uname' tool for detecting target architecture and set internal variable BUILD_PROFILE to the detected value. Currently supported values are 'x86_64', 'i586', 'armv7a'. To build plugins for another architecture, just issue following commands:
make clean make BUILD_PROFILE=<target architecture>
To automatically build tarballs with binaries, you may use 'release' target:
make clean make release
After issuing these commands, '.release' subdirectory will contain tarballs with binaries, documentation and sources. To perform release for another architecture, same way with BUILD_PROFILE is possible:
make clean make BUILD_PROFILE=<target architecture> release
To remove all previsously built tarballs, just issue:
make unrelease