mirror of
https://github.com/yokemura/Magical8bitPlug2.git
synced 2025-05-24 23:00:21 -04:00
56 lines
3.7 KiB
Markdown
56 lines
3.7 KiB
Markdown
# 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.](https://github.com/juce-framework/JUCE/blob/master/docs/CMake%20API.md)
|
|
|
|
* 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
|
|
1. [Read its official documentation of dependencies in Linux](https://github.com/juce-framework/JUCE/blob/master/docs/Linux%20Dependencies.md)
|
|
|
|
* Additional Dependencies
|
|
1. "git" - To Clone JUCE SDK
|
|
2. "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.
|
|
3. "cmake" - Build Environment: Version 3.15 and Above
|
|
4. "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](https://github.com/lv2-porting-project/JUCE/tree/lv2).
|
|
* 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
|
|
|
|
* Arguments (Orderless):
|
|
1. "vst3" - Build VST3 Plugin
|
|
2. "lv2" - Build LV2 Plugin
|
|
3. "debug" - Build for Debugging
|
|
4. "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
|
|
|
|
* Arguments (Orderless):
|
|
1. "standalone" - Install/Uninstall Standalone Executable to PREFIX_PATH/bin
|
|
2. "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.
|
|
3. "vst3" - Install/Uninstall VST3 Plugin Package to PREFIX_PATH/lib/vst3
|
|
4. "lv2" - Install/Uninstall LV2 Plugin Package to PREFIX_PATH/lib/lv2
|
|
5. "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.
|