Difference between revisions of "How To Build and Deploy LV2 Plugin to MOD Duo"
Line 1: | Line 1: | ||
== Introduction == | == Introduction == | ||
− | + | This is a quick start guide to get a LV2 plugin running in a MOD Duo Device. | |
+ | Let's cut the chatter and get started. | ||
− | + | == LV2 Basics == | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | This information is well described elsewhere. | |
* [http://www.nongnu.org/ll-plugins/lv2pftci/ LV2 programming for the complete idiot] | * [http://www.nongnu.org/ll-plugins/lv2pftci/ LV2 programming for the complete idiot] | ||
Line 19: | Line 12: | ||
* [http://harryhaaren.blogspot.com/2012/06/writing-lv2-plugins-lv2-overview.html Writing Lv2 plugins : An Lv2 Overview] | * [http://harryhaaren.blogspot.com/2012/06/writing-lv2-plugins-lv2-overview.html Writing Lv2 plugins : An Lv2 Overview] | ||
− | == | + | == Prepare build tools == |
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | A LV2 plugin is just a binary. However in order to run in a MOD Device it must be compiled using a cross-compiler targeting our hardware and software. | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | A LV2 plugin is just a binary. However to run in a MOD Device it must be compiled using a cross-compiler targeting our hardware and software. | ||
MOD Duo for example uses an ARM processor running a special flavor of Linux containing a specific set of libraries (dependencies). | MOD Duo for example uses an ARM processor running a special flavor of Linux containing a specific set of libraries (dependencies). | ||
− | + | We currently provide a custom cross-compiler that will take care of building LV2 plugins that will run in a MOD Duo. | |
+ | Just clone [https://github.com/moddevices/mod-plugin-builder MOD Plugin Builder] and follow the [https://github.com/moddevices/mod-plugin-builder/blob/master/README.md instructions]. | ||
In summary: | In summary: | ||
Line 55: | Line 30: | ||
Once the process is finished you should have local binary called <code>build</code>. | Once the process is finished you should have local binary called <code>build</code>. | ||
− | == | + | == Get source code and create a .mk file == |
+ | |||
+ | If you have an existing LV2 Plugin you just need to create a .mk file that will be used to build it. In case you haven't started your LV2 plugin yet just follow through the links above from [[#LV2 Basics]]. | ||
+ | |||
+ | We have a few samples available [https://github.com/moddevices/mod-lv2-examples/ here]. For this guide we'll use the eg-amp.lv2 example. | ||
− | The build | + | The build script is based on [https://buildroot.org/ Buildroot] which requires you to create a new package under <code>plugins/package/</code> and add a make file <code><plugin-name>.mk</code>. |
− | |||
− | |||
<source lang="console"> | <source lang="console"> | ||
− | $ cd | + | $ cd |
− | $ | + | $ git clone git://github.com/moddevices/mod-lv2-examples |
− | + | $ cp -R mod-lv2-examples/package/eg-amp-lv2 mod-plugin-builder/plugins/package/ | |
− | |||
</source> | </source> | ||
− | + | == Compile it == | |
− | + | We're all set to compile. | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | <source lang="console"> | |
− | + | $ cd ~/mod-plugin-builder/ | |
− | + | $ ./build eg-amp-lv2 | |
− | + | </source> | |
− | |||
− | |||
− | |||
− | |||
− | + | == Deploy it == | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | == Publish it == | |
− | |||
− | |||
− | |||
− | == | ||
− | |||
− | |||
− | |||
− | |||
− |
Revision as of 17:27, 6 May 2016
Contents
Introduction
This is a quick start guide to get a LV2 plugin running in a MOD Duo Device. Let's cut the chatter and get started.
LV2 Basics
This information is well described elsewhere.
Prepare build tools
A LV2 plugin is just a binary. However in order to run in a MOD Device it must be compiled using a cross-compiler targeting our hardware and software. MOD Duo for example uses an ARM processor running a special flavor of Linux containing a specific set of libraries (dependencies).
We currently provide a custom cross-compiler that will take care of building LV2 plugins that will run in a MOD Duo. Just clone MOD Plugin Builder and follow the instructions.
In summary:
$ cd
$ git clone https://github.com/moddevices/mod-plugin-builder
$ ./bootstrap.sh
Once the process is finished you should have local binary called build
.
Get source code and create a .mk file
If you have an existing LV2 Plugin you just need to create a .mk file that will be used to build it. In case you haven't started your LV2 plugin yet just follow through the links above from #LV2 Basics.
We have a few samples available here. For this guide we'll use the eg-amp.lv2 example.
The build script is based on Buildroot which requires you to create a new package under plugins/package/
and add a make file <plugin-name>.mk
.
$ cd
$ git clone git://github.com/moddevices/mod-lv2-examples
$ cp -R mod-lv2-examples/package/eg-amp-lv2 mod-plugin-builder/plugins/package/
Compile it
We're all set to compile.
$ cd ~/mod-plugin-builder/
$ ./build eg-amp-lv2