Closed teknopaul closed 11 months ago
build_linux.sh borkes because JUCE directory is empty.
did you pull submodules? without them Vaporizer2 won't build
If you have JUCE installed system-wide than you can pass -DUSE_SYSTEM_JUCE=ON
to cmake. If JUCE's cmake modules are placed in some non-standart directory - add -DCMAKE_PREFIX_PATH=/path/to/juce/cmake_dir
you need JUCE 7.0.8 or 7.0.9
First of all: you are aware that there are prebuild packages and installers also for linux available? (see https://github.com/VASTDynamics/Vaporizer2/releases/tag/v3.4.0)
In case you want to build on your own. JUCE, AnaMark-Tuning-Library and muFFT are own GitHub repositories that are submodules in Vaporizer2. So to checkout you need to do somethuing like:
create a suitable folder and cd into it
git clone https://github.com/VASTDynamics/Vaporizer2.git
cd Vaporizer2
git submodule update --init --recursive
And then for Linux
./build_linux.sh
OK thanks I didnt see those Linux links there are master README.md does not have lins for Linux.
I still want to build it because I'm looking at integrating it into LMSS so I can use LMMS control automation to control it.
After setting -DUSE_SYSTEM_JUCE=ON in the firest call to cmake I can compile but it wont link
/usr/bin/ld: /tmp/cceTLFQd.ltrans0.ltrans.o: in function `juce::StandalonePluginHolder::createPlugin()':
/usr/bin/ld: /tmp/cceTLFQd.ltrans0.ltrans.o: in function juce::StandalonePluginHolder::createPlugin()': <artificial>:(.text+0x26d6): undefined reference to createPluginFilter()'
what Vaporizer2 branch and which version of JUCE do you have? does it compiles with bundled (submodule) JUCE?
FYI build script does not stop if the first cmake command fails
./CMakeLists.txt: "VASTvaporizer/Source/AnaMark-Tuning-Library/SCL_Import.cpp"
but this file does not exist
building master should I be in some branch
OK sorry , gotcha
git submodule update --init --recursive
is missing from the build script
Then cmake fails but it tries to build anyway
you might want to add set -e to the bash script
OK sorry , gotcha
git submodule update --init --recursive
is missing from the build script
Yes, this is what I wrote above.
And hm. i don't think that git commands belong in a build script.
in GNU Linux such instructions live in the INSTALL file inthe root of the project, not sure where it should be for cross platform projects
@VASTDynamics I use this script for GitHub Actions https://github.com/KottV/Vaporizer2/blob/main/build_linux.sh https://github.com/KottV/Vaporizer2/blob/main/.github/workflows/cmake-multi-platform.yml to build Vaporizer2 automatically.
It can be used for Windows and Mac builds here too, which is useful when you pushing commits and want to make sure that it compiles. I just need to make it a bit nicer before submitting.
@teknopaul yes, build script and instructions require some attention
Build successful and looking at code, cheers geeza
build_linux.sh borkes because JUCE directory is empty. I have JUCE development libs locally, I shouldn't need a dedicated version to build with JUCE as a dependency? If the build requires some very specific JUCE, I would need to know which version and where to get it.