Elk Audio OS 0.9.0 (major SUSHI update)

Hi everyone,
we are sorry if this much-awaited release has come later than our usual timing between updates.

In the past months we have been working a lot on Aloha but we tried to keep Elk moving at the same time, and make good use of all the precious feedback & suggestions received here from you. Thanks a lot for that!

This is a significant feature release, where most of the new interesting stuff come from major updates in SUSHI 0.11, which now is able to dynamically load plugins & tracks at run-time, send push notifications to clients, comes with a fully reworked gRPC API, a couple of new internal plugins and many other things. Check the relative forum thread for more details.

For the rest, we updated the underlying Yocto system to keep up to date to recent kernels, Raspberry Pi firmware and gcc compiler.

On the minor side, we have decided to drop support for Raspberry Pi 3 binary builds - we will provide only RPi4 64 bit builds from now on. However, it is still possible to build RPi3 images from our Yocto layers, if anyone is interested in taking up the task of preparing RPi3 builds we’d be very happy to give her/him the necessary help to get started for that.

As usual, you can find more details and the download links on our Github release page:

Happy hacking!

The Elk Audio development team


This is great news!
I see new release has support for JUCE6 plugins built with standard JUCE repository. Do you have any specific advice/examples? Does this mean VST3 in linux built with JUCE work now?

oh, I saw docs were updated as well. I did some tests and I’m running into cross-compilation issues complaining about undefined reference to __log_finite’` and other math functions not found. I tried a couple of things without luck so far. However I saw this line in the ELK docs for building with JUCE6 “Only a minor patch to JUCE is needed, unsetting $CC $CXX environment variables, as having those set broke cross-compilation.”. How do you actually do that? (sorry for the noob question)

errr found it, the issue is that some objects had been already compiled with the previous sdk and I did not run make clean after installing the new :S I was able to compile juce6/vst3 plugin now, will test later if all works well in the board

re Only a minor patch to JUCE is needed, unsetting $CC $CXX environment variables, as having those set broke cross-compilation I still don’t know what that means, but I did nothing like that and I could compile…

Hi @frederic,
here the patch we used to get the Audio Plugin examples built with CMake and JUCE 6 (version 6.0.4 to be precise). However, it should be possible to avoid this because you shouldn’t need to build this tool but we have to play around more time to find a proper clean solution that we can recommend.

 extras/Build/juceaide/CMakeLists.txt | 3 ---
 1 file changed, 3 deletions(-)

diff --git a/extras/Build/juceaide/CMakeLists.txt b/extras/Build/juceaide/CMakeLists.txt
index 5107a878b..e24dfe00e 100644
--- a/extras/Build/juceaide/CMakeLists.txt
+++ b/extras/Build/juceaide/CMakeLists.txt
@@ -50,9 +50,6 @@ else()
     # environment variables, which is unfortunate because we really don't want to cross-compile
     # juceaide. If you really want to set the compilers for juceaide, pass the appropriate
     # CMAKE_<lang>_COMPILER flags when configuring CMake.
-    unset(ENV{ASM})
-    unset(ENV{CC})
-    unset(ENV{CXX})
     message(STATUS "Configuring juceaide")

oh I see, I’m not using juceaide. also I’m not using cmake.
thanks @Stefano!

I tried to load the VST3 plugin in 0.9.0 but I’m getting these errors:

[2020-11-30 18:42:14.784] [error] [vst3] Failed to load VST3 Module: /home/mind/SourceSampler.vst3 is not a module directory.
[2020-11-30 18:42:14.784] [error] [engine] Failed to initialize plugin SourceSampler
[2020-11-30 18:42:14.784] [debug] [vst3] Unloading plugin 
[2020-11-30 18:42:14.784] [error] [jsonconfig] Invalid plugin uid RaAu.SoSa in JSON config file

The plugin was compiled with JUCE6. I don’t know what “is not a module directory.” means. Also the uid I don’t know which one should be, I tried several options, but I guess the error is because of the “is not a module directory.” thing?

Also, when after upgrading to 0.9.0 I try to run sensei (with the same configuration file) as before I get the following:

Failed to initialize, check logs for details. Exiting...

but I can’t fins the logs are, nor sensei -h seems to help…