Linux build of HISE
-
Funny, I was doing the same thing but I got a little bit further :)
I installed a VM on OS X with Ubuntu and gave it a try - I never used Linux before so it was pretty left-handed.
This post in the JUCE forum gives a starting point of all dependencies:
I had to fix the same things that you are describing. You'll need to define
USE_IPP=0
in the linux makefile to get rid of the IPP stuff (there is IPP for Linux but let's just skip this for starters). It compiled OK, but crashed because of the font I am using (with the same backtrace of this GitHub issue:https://github.com/christophhart/HISE/issues/5
HISE runs now on Linux, but there are loads of platform specific functions that I need to customize - all the setting files and application paths etc. I also don't have ALSA or JACK enabled so it is not a joy to use.
-
I'm glad it's not just me finding it tricky :P I'll check it that IPP make file business, I've avoided editing the make file so far because I know nothing about them
-
Me too but you can define custom preprocessor definitions in the Projucer.
-
Alright, the latest commits should be compilable on Linux - I even hooked it up on a TravisCI build system (which nearly drove me insane...)
-
Hi Christoph, I've built and run the standalone and plugin for Linux. System here is Fedora 21 x86_64, with extensions from Planet CCRMA. I'm trying to export the preset example from http://hise.audio/manual/Manual.php but I'm obviously missing something. I receive this error when trying the Export As Instrument Plugin :
"You have to add at least one script processor and call Synth.addToFront(true)."
What have I missed ?
Edit: Ah, never mind, I've found the fuller tutorials on github, I'll go through them first.
Best regards,
Dave Phillips
-
Actually the export won't work on Linux yet - I didn't expect such a fast response and I'll need to add the system compiler script for Linux.
But is the audio working correctly on your system? I get a choppy playback and ridiculous latencies but I can't use JACK because I am on a VM so I think this is the culprit and not HISE.
-
Ah, thanks, Christoph, I was starting to think I'd lost my wits. Yes, audio is smooth with JACK, and no, you're not likely to get any decent performance from JACK through a VM. :)
-
I've just seen the experimental Linux update :) happy Christmas! I'll give it a go tomorrow.
-
I just tried building on Linux and it gave this error
~/Desktop/HISE-master/projects/standalone/Builds/LinuxMakefile $ make $CXX is [clang++] Compiling DspUnitTests.cpp In file included from ../../../../hi_scripting/scripting/api/DspUnitTests.cpp:33: ../../JuceLibraryCode/JuceHeader.h:18:10: fatal error: 'hi_backend/hi_backend.h' file not found #include <hi_backend/hi_backend.h> ^ 1 error generated. Makefile:111: recipe for target 'build/intermediate/Debug/DspUnitTests_8fd29654.o' failed make: *** [build/intermediate/Debug/DspUnitTests_8fd29654.o] Error 1
I then opened the project in the Linux version of Projucer, resaved it, and did the "make" again and it worked fine. I'm on Linux Mint 18. It plays fine with no lag using just ALSA and PulseAudio (no JACK). Well done! I believe you've made the best cross-platform sampler ever.
-
Yes you'll need to resave the Projucer project files before compiling because it creates different paths in the header files for each platform. I'll probably remove the makefile from the repo so users are not tempted to take that shortcut (it was necessary for the Travis CI support).
I also can hardly believe how easy this was, but this is mainly because of JUCE and its cross platform awesomeness :)
-
Will it take much tinkering to get the VST version working?
-
<noob> Is VST available on Linux </noob>? I though it's only LV2 there...
-
From what I understand native Linux VSTs can be created - http://linux-sound.org/linux-vst-plugins.html.
-
Yes, you can compile native Linux VST/VSTi plugins. Rory Walsh's Cabbage environment might be worth a look for you, it's a JUCE-based DAW and environment for audio/MIDI development. It's powered by Csound, works with JACK and ALSA, and exports plugins in VST and LV2 formats. http://cabbageaudio.com/
Doesn't JUCE take care of all the details ? IIRC I only need to specify the path to the VST SDK and I'm ready to roll, same as the Win/Mac builds.
-
Alright I'll give it a shot.
-
The latest commit should compile the VST plugin on Linux.
-
Excellent, I'll give it a whirl tomorrow :D
-
Ok I've compiled the VST and it produces a .so file, I assume this is the Linux equivalent of a dll. Any idea which hosts support this format? I tried it in Reaper running under Wine but no luck.
-
@d-healey Right, that .so suffix indicates a Linux shared object file, i.e. the plugin in native Linux VST format. Reaper under Wine expects VST plugins in Windows DLL format, so you'll need to test your new plugin in Bitwig, Ardour, Qtractor, Tracktion, etc.
HTH,
dp
-
I've got a bit further with exporting a native Linux VSTi from the standalone. I'm failing now with this error :
Export Error
HISE image directory not found
Any suggestions ?
Best,
dp