I'm trying to compile by self, but ran to strange error, seems like some includes are not included:
~/src/audio/Curvessor/Builds/LinuxMakefile> V=1 CONFIG=Release make
mkdir -p build/intermediate/Release
Compiling SplineEditor.cpp
g++ -MMD -DLINUX=1 -DNDEBUG=1 -DR8B_PFFFT_DOUBLE=1 -DNOMINMAX=1 -DJUCER_LINUX_MAKE_6D53C8B4=1 -DJUCE_APP_VERSION=1.0.0 -DJUCE_APP_VERSION_HEX=0x10000 -I/usr/include/freetype2 -pthread -I/usr/share/juce/modules/juce_audio_processors/format_types/VST3_SDK -I/home/kv/SDKs/VST2_SDK -I../../JuceLibraryCode -I/usr/share/juce/modules -I../../oversimple -I../../oversimple/avec -I../../oversimple/avec/vectorclass -I../../oversimple/r8brain -I../../juicy -I -fPIC -O3 -march=native -fPIC -std=c++17 -DJucePlugin_Build_VST=1 -DJucePlugin_Build_VST3=0 -DJucePlugin_Build_AU=0 -DJucePlugin_Build_AUv3=0 -DJucePlugin_Build_RTAS=0 -DJucePlugin_Build_AAX=0 -DJucePlugin_Build_Standalone=0 -DJucePlugin_Build_Unity=0 -DJUCE_SHARED_CODE=1 -o "build/intermediate/Release/SplineEditor_feeab94e.o" -c "../../juicy/SplineEditor.cpp"
In file included from ../../juicy/SplineParameters.h:20,
from ../../juicy/SplineEditor.h:21,
from ../../juicy/SplineEditor.cpp:18:
../../oversimple/avec/avec/dsp/Spline.hpp:141:5: error: ‘Scalar’ does not name a type
141 | Scalar smoothingAlpha[Vec::size()];
| ^~~~~~
../../oversimple/avec/avec/dsp/Spline.hpp:149:26: error: ‘Scalar’ has not been declared
149 | void setSmoothingAlpha(Scalar alpha) override
| ^~~~~~
../../oversimple/avec/avec/dsp/Spline.hpp:154:3: error: ‘Scalar’ does not name a type
154 | Scalar* getSmoothingAlpha() override { return data->smoothingAlpha; };
| ^~~~~~
../../oversimple/avec/avec/dsp/Spline.hpp:154:3: note: (perhaps ‘typename avec::SplineAutomatorInterface<Vec>::Scalar’ was intended)
../../oversimple/avec/avec/dsp/Spline.hpp: In constructor ‘avec::SplineAutomator<Vec, numKnots_>::SplineAutomator()’:
../../oversimple/avec/avec/dsp/Spline.hpp:161:61: error: ‘Scalar’ was not declared in this scope
161 | std::fill_n(data->smoothingAlpha, sizeof(Data) / sizeof(Scalar), 0.0);
| ^~~~~~
../../oversimple/avec/avec/dsp/Spline.hpp: In instantiation of ‘struct avec::SplineAutomator<Vec2d, 17>’:
../../oversimple/avec/avec/dsp/Spline.hpp:215:11: required from ‘static void avec::SplineFactory<Vec, maxNumKnots>::initialize(avec::SplineHolder<Vec>&, bool) [with Vec = Vec2d; int maxNumKnots = 17]’
../../oversimple/avec/avec/dsp/Spline.hpp:248:43: required from ‘void avec::SplineHolder<Vec>::initialize(bool) [with int numKnots = 17; Vec = Vec2d]’
../../juicy/SplineEditor.cpp:35:67: required from here
../../oversimple/avec/avec/dsp/Spline.hpp:149:8: error: ‘void avec::SplineAutomator<Vec, numKnots_>::setSmoothingAlpha(int) [with Vec = Vec2d; int numKnots_ = 17]’ marked ‘override’, but does not override
149 | void setSmoothingAlpha(Scalar alpha) override
| ^~~~~~~~~~~~~~~~~
../../oversimple/avec/avec/dsp/Spline.hpp: In instantiation of ‘static void avec::SplineFactory<Vec, maxNumKnots>::initialize(avec::SplineHolder<Vec>&, bool) [with Vec = Vec2d; int maxNumKnots = 17]’:
../../oversimple/avec/avec/dsp/Spline.hpp:248:43: required from ‘void avec::SplineHolder<Vec>::initialize(bool) [with int numKnots = 17; Vec = Vec2d]’
../../juicy/SplineEditor.cpp:35:67: required from here
../../oversimple/avec/avec/dsp/Spline.hpp:215:11: error: invalid new-expression of abstract class type ‘avec::SplineAutomator<Vec2d, 17>’
215 | new SplineAutomator<Vec, maxNumKnots>);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../oversimple/avec/avec/dsp/Spline.hpp:132:8: note: because the following virtual functions are pure within ‘avec::SplineAutomator<Vec2d, 17>’:
132 | struct SplineAutomator final : public SplineAutomatorInterface<Vec>
| ^~~~~~~~~~~~~~~
../../oversimple/avec/avec/dsp/Spline.hpp:75:19: note: ‘avec::SplineAutomatorInterface<Vec>::Scalar* avec::SplineAutomatorInterface<Vec>::getSmoothingAlpha() [with Vec = Vec2d; avec::SplineAutomatorInterface<Vec>::Scalar = double]’
75 | virtual Scalar* getSmoothingAlpha() = 0;
| ^~~~~~~~~~~~~~~~~
../../oversimple/avec/avec/dsp/Spline.hpp:77:16: note: ‘void avec::SplineAutomatorInterface<Vec>::setSmoothingAlpha(avec::SplineAutomatorInterface<Vec>::Scalar) [with Vec = Vec2d; avec::SplineAutomatorInterface<Vec>::Scalar = double]’
77 | virtual void setSmoothingAlpha(Scalar alpha) = 0;
| ^~~~~~~~~~~~~~~~~