HISE Logo Forum
    • Categories
    • Register
    • Login

    Linux build of HISE

    Scheduled Pinned Locked Moved General Questions
    125 Posts 14 Posters 40.8k Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • Christoph HartC
      Christoph Hart
      last edited by

      Me too but you can define custom preprocessor definitions in the Projucer.

      1 Reply Last reply Reply Quote 1
      • Christoph HartC
        Christoph Hart
        last edited by

        Alright, the latest commits should be compilable on Linux - I even hooked it up on a TravisCI build system (which nearly drove me insane...)

        1 Reply Last reply Reply Quote 0
        • D
          davephillips
          last edited by davephillips

          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

          1 Reply Last reply Reply Quote 1
          • Christoph HartC
            Christoph Hart
            last edited by

            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.

            1 Reply Last reply Reply Quote 0
            • D
              davephillips
              last edited by

              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. :)

              1 Reply Last reply Reply Quote 0
              • d.healeyD
                d.healey
                last edited by

                I've just seen the experimental Linux update :) happy Christmas! I'll give it a go tomorrow.

                Libre Wave - Freedom respecting instruments and effects
                My Patreon - HISE tutorials
                YouTube Channel - Public HISE tutorials

                1 Reply Last reply Reply Quote 0
                • d.healeyD
                  d.healey
                  last edited by

                  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.

                  Libre Wave - Freedom respecting instruments and effects
                  My Patreon - HISE tutorials
                  YouTube Channel - Public HISE tutorials

                  1 Reply Last reply Reply Quote 1
                  • Christoph HartC
                    Christoph Hart
                    last edited by

                    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 :)

                    1 Reply Last reply Reply Quote 1
                    • d.healeyD
                      d.healey
                      last edited by

                      Will it take much tinkering to get the VST version working?

                      Libre Wave - Freedom respecting instruments and effects
                      My Patreon - HISE tutorials
                      YouTube Channel - Public HISE tutorials

                      1 Reply Last reply Reply Quote 0
                      • Christoph HartC
                        Christoph Hart
                        last edited by

                        Is VST available on Linux ? I though it's only LV2 there...

                        1 Reply Last reply Reply Quote 0
                        • d.healeyD
                          d.healey
                          last edited by

                          From what I understand native Linux VSTs can be created - http://linux-sound.org/linux-vst-plugins.html.

                          Libre Wave - Freedom respecting instruments and effects
                          My Patreon - HISE tutorials
                          YouTube Channel - Public HISE tutorials

                          1 Reply Last reply Reply Quote 0
                          • D
                            davephillips
                            last edited by

                            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.

                            1 Reply Last reply Reply Quote 0
                            • Christoph HartC
                              Christoph Hart
                              last edited by

                              Alright I'll give it a shot.

                              1 Reply Last reply Reply Quote 0
                              • Christoph HartC
                                Christoph Hart
                                last edited by

                                The latest commit should compile the VST plugin on Linux.

                                1 Reply Last reply Reply Quote 2
                                • d.healeyD
                                  d.healey
                                  last edited by

                                  Excellent, I'll give it a whirl tomorrow :D

                                  Libre Wave - Freedom respecting instruments and effects
                                  My Patreon - HISE tutorials
                                  YouTube Channel - Public HISE tutorials

                                  1 Reply Last reply Reply Quote 0
                                  • d.healeyD
                                    d.healey
                                    last edited by

                                    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.

                                    Libre Wave - Freedom respecting instruments and effects
                                    My Patreon - HISE tutorials
                                    YouTube Channel - Public HISE tutorials

                                    AxiomCruxA 1 Reply Last reply Reply Quote 1
                                    • D
                                      davephillips
                                      last edited by

                                      @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

                                      1 Reply Last reply Reply Quote 1
                                      • D
                                        davephillips
                                        last edited by

                                        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

                                        1 Reply Last reply Reply Quote 0
                                        • Christoph HartC
                                          Christoph Hart
                                          last edited by

                                          You'll need to specify the path of the HISE source code folder.

                                          But I am afraid you won't get satisfying results before I explicitely added the compile exporter for Linux (it involves creating a bash script and calling the system compilers xcodebuild and msbuild on the other OS (I think I'll be using clang on linux).

                                          1 Reply Last reply Reply Quote 0
                                          • D
                                            davephillips
                                            last edited by

                                            Okay, thanks Christoph. I got even a little further but wound up with this message :

                                            Export Error

                                            Compilation error

                                            The CLI reported this :

                                            Creating /home/dlphilp/MyFirstHISE/Binaries/Source/PresetData.h and /home/dlphilp/MyFirstHISE/Binaries/Source/PresetData.cpp from files in /home/dlphilp/MyFirstHISE/Binaries/temp...

                                            Adding preset: 4748 bytes
                                            Adding impulses: 22 bytes
                                            Adding externalFiles: 58 bytes
                                            Adding userPresets: 121 bytes
                                            Adding images: 10 bytes

                                            Total size of binary data: 4959 bytes
                                            JUCE Assertion failure in SettingsWindows.cpp:375
                                            ... (lots more of the same failure message)
                                            Couldn't get a file descriptor referring to the console

                                            Best,

                                            dp

                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            21

                                            Online

                                            1.7k

                                            Users

                                            11.9k

                                            Topics

                                            103.5k

                                            Posts