mirror of
https://github.com/yokemura/Magical8bitPlug2.git
synced 2025-05-24 23:00:21 -04:00
.. | ||
.gitignore | ||
builder_linux.sh | ||
CMakeLists.txt | ||
installer_linux.sh | ||
magical8bitplug2.desktop | ||
README.md |
Tools for Building and Installing Programs Based on JUCE Framework in Linux Using JUCE CMake API
-
Since JUCE version 6.0.0, JUCE CMake API became available. Read its official documentation about JUCE CMake API.
-
JUCE CMake API is useful to build executables and plugins in Linux, giving flexibility on adding features and optional building.
Dependancies
-
Primary Dependencies for JUCE framework in Linux
-
Additional Dependencies
- "git" - To Clone JUCE SDK
- "clang" - Portable Compiler over Processors and Architectures: I confirmed that version 11.0.1-2 in Raspberry Pi OS on Raspberry Pi 3B can compile a project with JUCE framework. GNU C/C++ compiler is the default compiler for Linux. However, the GNU compiler for arm-none-linux-gnueabi (version 10.2.1-6) needs to explicitly link libatomic which is implicitly linked in compilers for other processors. This issue may occur errors on compiling.
- "cmake" - Build Environment: Version 3.15 and Above
- "lv2-dev" - Development Tools for LV2 Plugin
builder_linux.sh
-
This Bash script downloads JUCE framework and builds a standalone executable, a VST3 plugin, and a LV2 plugin.
- Example to Build All:
./builder_linux.sh vst3 lv2
- A standalone executable is build without any argument.
- If you select to build a LV2 plugin, the JUCE framework is downloaded from the fork of the LV2 porting project.
- This script executes CMake with CMakeLists.txt in this folder. LLVM Clang is assigned as the C/C++ compiler.
- Written by Kenta Ishii (JimmyKenMerchant.com) in January 2022
- Example to Build All:
-
Arguments (Orderless):
- "vst3" - Build VST3 Plugin
- "lv2" - Build LV2 Plugin
- "debug" - Build for Debugging
- "newjuce" - Reinstall Juce Framework: This's useful when you've already built without a LV2 plugin, but you want to build again for a LV2 plugin.
installer_linux.sh
-
This Bash script helps to install an executable and plugins to your Linux system.
- Example to Install All:
./installer_linux.sh standalone vst3 lv2
- Example to Uninstall Standalone:
./installer_linux.sh standalone uninstall
- This script needs the root privilege.
- '/usr/local' is the prefix to destinations. Change the value of PREFIX_PATH in this script if you want to install an executable and plugins into other destinations.
- Written by Kenta Ishii (JimmyKenMerchant.com) in January 2022
- Example to Install All:
-
Arguments (Orderless):
- "standalone" - Install/Uninstall Standalone Executable to PREFIX_PATH/bin
- "icons" - Install/Uninstall Small, Big, and Scalable Icons to PREFIX_PATH/share/icons/hicolor/ICON_SIZExICON_SIZE(or 'scalable')/apps: A .desktop (Desktop Entry) file is also installed to PREFIX_PATH/share/applications for linking icons to the standalone executable. Installed icons will appear after restarting you system.
- "vst3" - Install/Uninstall VST3 Plugin Package to PREFIX_PATH/lib/vst3
- "lv2" - Install/Uninstall LV2 Plugin Package to PREFIX_PATH/lib/lv2
- "uninstall" - Set Uninstall Mode
History
- February 26, 2022: Added GPLv3 License to "builder_linux.sh" and "installer_linux.sh".
- February 23, 2022: Modified "installer_linux.sh" about installing icons with imcomplete set of sizes.
- February 5, 2022: Added the "icons" arguments to "installer_linux.sh". Installing with lowercase letters.
- January 30, 2022: Added the "debug" and "newjuce" arguments to "builder_linux.sh".
- January 29, 2022: Published "builder_linux.sh", "installer_linux.sh", and "README.md" for the first time.