ZLTemplate is a template for building JUCE plugins (derived from pamplejuce).
Please make sure Clang (AppleClang 16+ or LLVM/Clang 17+), cmake 3.25+, ninja are installed and configured on your OS.
On Linux, you can install the remaining dependencies with the following command:
sudo apt-get update && sudo apt install libasound2-dev libx11-dev libxinerama-dev libxext-dev libfreetype-dev libfontconfig1-dev libwebkit2gtk-4.1-dev libglu1-mesa-devOnce you have set up the environment, you can clone the ZL Template code, populate all submodules, then configure & build the code. Please set the variable ZL_JUCE_FORMATS as a list of formats that you want, e.g., "VST3;LV2".
git clone https://github.com/ZL-Audio/ZLTemplate
cd ZLTemplate
git submodule update --init --recursive
cmake -B Builds -G Ninja -DCMAKE_BUILD_TYPE=Release -DKFR_ENABLE_MULTIARCH=OFF -DZL_JUCE_FORMATS="VST3;LV2" .
cmake --build Builds --config ReleaseAfter building, the plugins should have been copied to the corresponding folders. If you want to disable the copy process, you can pass
-DZL_JUCE_COPY_PLUGIN=FALSE, find the binary folders underBuilds/ZLTemplate_artefacts/Releaseand copy them manually.
If there are multiple compilers on your OS, you may need to pass extra flags to maker sure that cmake uses
LLVM/Clang. On Linux, you may pass-DCMAKE_C_COMPILER=clang -DCMAKE_CXX_COMPILER=clang++. On Windows, you may pass-DCMAKE_C_COMPILER=clang-cl -DCMAKE_CXX_COMPILER=clang-cl.
AAX plug-ins need to be digitally signed using PACE Anti-Piracy's signing tools before they will run in commercially available versions of Pro Tools.
ZLTemplate is licensed under MIT, as found in the LICENSE.md file. However, the logo of ZL Audio is not covered by this license.
Copyright (c) 2023 - zsliu98
JUCE framework from JUCE
JUCE template from pamplejuce