HISE Logo Forum
    • Categories
    • Register
    • Login

    Linux build of HISE

    Scheduled Pinned Locked Moved General Questions
    125 Posts 14 Posters 41.9k 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.
    • d.healeyD
      d.healey
      last edited by

      Errors with standalone build

      In file included from ../../JuceLibraryCode/JuceHeader.h:21:0,
                       from ../../Source/Plugin.cpp:2:
      ../../Source/Plugin.cpp: In member function ‘juce::AudioProcessor* hise::StandaloneProcessor::createProcessor()’:
      /media/dave/work1/HISE Development Builds/HISE/hi_frontend/hi_frontend.h:116:67: error: ‘images’ is not a member of ‘PresetData’
        ValueTree imageData = hise::PresetHandler::loadValueTreeFromData(PresetData::i
                                                                         ^
      ../../Source/Plugin.cpp:12:64: note: in expansion of macro ‘CREATE_PLUGIN_WITH_AUDIO_FILES’
       AudioProcessor* hise::StandaloneProcessor::createProcessor() { CREATE_PLUGIN_WI
                                                                      ^
      /media/dave/work1/HISE Development Builds/HISE/hi_frontend/hi_frontend.h:116:87: error: ‘imagesSize’ is not a member of ‘PresetData’
       ta = hise::PresetHandler::loadValueTreeFromData(PresetData::images, PresetData:
                                                                           ^
      ../../Source/Plugin.cpp:12:64: note: in expansion of macro ‘CREATE_PLUGIN_WITH_AUDIO_FILES’
       AudioProcessor* hise::StandaloneProcessor::createProcessor() { CREATE_PLUGIN_WI
                                                                      ^
      /media/dave/work1/HISE Development Builds/HISE/hi_frontend/hi_frontend.h:118:69: error: ‘impulses’ is not a member of ‘PresetData’
        ValueTree impulseData = hise::PresetHandler::loadValueTreeFromData(PresetData:
                                                                           ^
      ../../Source/Plugin.cpp:12:64: note: in expansion of macro ‘CREATE_PLUGIN_WITH_AUDIO_FILES’
       AudioProcessor* hise::StandaloneProcessor::createProcessor() { CREATE_PLUGIN_WI
                                                                      ^
      /media/dave/work1/HISE Development Builds/HISE/hi_frontend/hi_frontend.h:118:91: error: ‘impulsesSize’ is not a member of ‘PresetData’
        = hise::PresetHandler::loadValueTreeFromData(PresetData::impulses, PresetData:
                                                                           ^
      ../../Source/Plugin.cpp:12:64: note: in expansion of macro ‘CREATE_PLUGIN_WITH_AUDIO_FILES’
       AudioProcessor* hise::StandaloneProcessor::createProcessor() { CREATE_PLUGIN_WI
      
      

      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

        It seems like something went wrong at autogenerated the resource files. Can you post the content of PresetData.h in you Build directory?

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

          @christoph-hart

          /* (Auto-generated binary data file). */
          
          #ifndef BINARY_PRESETDATA_H
          #define BINARY_PRESETDATA_H
          
          namespace PresetData
          {
              extern const char*  externalFiles;
              const int           externalFilesSize = 430810;
          
              extern const char*  preset;
              const int           presetSize = 1645467;
          
              extern const char*  userPresets;
              const int           userPresetsSize = 1526;
          
          }
          
          #endif
          
          

          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

            Presets aren't showing in the plugin either, also I get this when building the plugin

            /media/dave/work1/HISE Development Builds/HISE/JUCE/modules/juce_core/zip/zlib/deflate.h:96:16: warning: type ‘struct internal_state’ violates one definition rule [-Wodr]
             typedef struct internal_state {
                            ^
            /media/dave/work1/HISE Development Builds/HISE/JUCE/modules/juce_graphics/image_formats/../../juce_core/zip/zlib/zlib.h:1347:12: note: a different type is defined in another translation unit
                 struct internal_state {int dummy;}; /* hack for buggy compilers */
                        ^
            /media/dave/work1/HISE Development Builds/HISE/JUCE/modules/juce_core/zip/zlib/deflate.h:97:15: note: the first difference of corresponding definitions is field ‘strm’
                 z_streamp strm;      /* pointer back to this zlib stream */
                           ^
            /media/dave/work1/HISE Development Builds/HISE/JUCE/modules/juce_graphics/image_formats/../../juce_core/zip/zlib/zlib.h:1347:32: note: a field with different name is defined in another translation unit
                 struct internal_state {int dummy;}; /* hack for buggy compilers */
                                            ^
            /media/dave/work1/HISE Development Builds/HISE/JUCE/modules/juce_core/zip/zlib/zlib.h:83:16: warning: type ‘struct z_stream_s’ violates one definition rule [-Wodr]
             typedef struct z_stream_s {
                            ^
            /media/dave/work1/HISE Development Builds/HISE/JUCE/modules/juce_graphics/image_formats/../../juce_core/zip/zlib/zlib.h:83:16: note: a different type is defined in another translation unit
             typedef struct z_stream_s {
                            ^
            /media/dave/work1/HISE Development Builds/HISE/JUCE/modules/juce_core/zip/zlib/zlib.h:93:32: note: the first difference of corresponding definitions is field ‘state’
                 struct internal_state FAR *state; /* not visible by applications */
                                            ^
            /media/dave/work1/HISE Development Builds/HISE/JUCE/modules/juce_graphics/image_formats/../../juce_core/zip/zlib/zlib.h:93:32: note: a field of same name but different type is defined in another translation unit
                 struct internal_state FAR *state; /* not visible by applications */
                                            ^
            /media/dave/work1/HISE Development Builds/HISE/JUCE/modules/juce_core/zip/zlib/deflate.h:96:16: note: type ‘struct internal_state’ should match type ‘struct internal_state’ that itself violate one definition rule
             typedef struct internal_state {
                            ^
            /media/dave/work1/HISE Development Builds/HISE/JUCE/modules/juce_graphics/image_formats/../../juce_core/zip/zlib/zlib.h:1347:12: note: the incompatible type is defined here
                 struct internal_state {int dummy;}; /* hack for buggy compilers */
                        ^
            In function ‘__poll_alias’,
                inlined from ‘sleepUntilEvent.constprop’ at /media/dave/work1/HISE Development Builds/HISE/JUCE/modules/juce_events/native/juce_linux_Messaging.cpp:130:78,
                inlined from ‘dispatchNextMessageOnSystemQueue’ at /media/dave/work1/HISE Development Builds/HISE/JUCE/modules/juce_events/native/juce_linux_Messaging.cpp:244:42:
            /usr/include/x86_64-linux-gnu/bits/poll2.h:41:60: warning: call to ‘__poll_chk_warn’ declared with attribute warning: poll called with fds buffer too small file nfds entries
              return __poll_chk (__fds, __nfds, __timeout, __bos (__fds));
            
            

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

            1 Reply Last reply Reply Quote 0
            • Dominik MayerD
              Dominik Mayer
              last edited by Dominik Mayer

              confirmed. exactly the same issues here..

              /* (Auto-generated binary data file). */
              
              #ifndef BINARY_PRESETDATA_H
              #define BINARY_PRESETDATA_H
              
              namespace PresetData
              {
                  extern const char*  preset;
                  const int           presetSize = 3813;
              
                  extern const char*  images;
                  const int           imagesSize = 10;
              
                  extern const char*  impulses;
                  const int           impulsesSize = 14;
              
                  extern const char*  userPresets;
                  const int           userPresetsSize = 225;
              
                  extern const char*  externalFiles;
                  const int           externalFilesSize = 1742;
              
              }
              
              #endif
              

              on latest Ubuntu 16.04

              best,
              d

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

                Please try again, there was a nasty typo in the standalone export code which created a "default" Projucer project so it's very likely that this was also causing your issues.

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

                  @christoph-hart Won't build for some reason

                  In file included from ../../../../../HISE/hi_backend/../hi_modules/../hi_scripting/../hi_sampler/../hi_components/../hi_dsp/../hi_core/../JUCE/modules/juce_dsp/juce_dsp.h:239:0,
                                   from ../../../../../HISE/hi_backend/../hi_modules/../hi_scripting/../hi_sampler/../hi_components/../hi_dsp/../hi_core/hi_core.h:68,
                                   from ../../../../../HISE/hi_backend/../hi_modules/../hi_scripting/../hi_sampler/../hi_components/../hi_dsp/hi_dsp.h:55,
                                   from ../../../../../HISE/hi_backend/../hi_modules/../hi_scripting/../hi_sampler/../hi_components/hi_components.h:57,
                                   from ../../../../../HISE/hi_backend/../hi_modules/../hi_scripting/../hi_sampler/hi_sampler.h:54,
                                   from ../../../../../HISE/hi_backend/../hi_modules/../hi_scripting/hi_scripting.h:61,
                                   from ../../../../../HISE/hi_backend/../hi_modules/hi_modules.h:57,
                                   from ../../../../../HISE/hi_backend/hi_backend.h:55,
                                   from ../../Source/../JuceLibraryCode/JuceHeader.h:17,
                                   from ../../Source/MainComponent.h:12,
                                   from ../../Source/MainComponent.cpp:12:
                  ../../../../../HISE/hi_backend/../hi_modules/../hi_scripting/../hi_sampler/../hi_components/../hi_dsp/../hi_core/../JUCE/modules/juce_dsp/containers/juce_SIMDRegister.h: In instantiation of ‘struct juce::dsp::SIMDRegister<long long int>’:
                  ../../../../../HISE/hi_backend/../hi_modules/../hi_scripting/../hi_sampler/../hi_components/../hi_dsp/../hi_core/../hi_streaming/hi_streaming/MonolithAudioFormat.h:402:77:   recursively required by substitution of ‘template<class Type> juce::dsp::SIMDRegister<Type> juce::jmax(juce::dsp::SIMDRegister<Type>, juce::dsp::SIMDRegister<Type>) [with Type = long long int]’
                  ../../../../../HISE/hi_backend/../hi_modules/../hi_scripting/../hi_sampler/../hi_components/../hi_dsp/../hi_core/../hi_streaming/hi_streaming/MonolithAudioFormat.h:402:77:   required from here
                  ../../../../../HISE/hi_backend/../hi_modules/../hi_scripting/../hi_sampler/../hi_components/../hi_dsp/../hi_core/../JUCE/modules/juce_dsp/containers/juce_SIMDRegister.h:84:43: error: invalid use of incomplete type ‘struct juce::dsp::SIMDNativeOps<long long int>’
                       typedef typename NativeOps::vSIMDType vSIMDType;
                                                             ^
                  In file included from ../../../../../HISE/hi_backend/../hi_modules/../hi_scripting/../hi_sampler/../hi_components/../hi_dsp/../hi_core/../JUCE/modules/juce_dsp/juce_dsp.h:229:0,
                                   from ../../../../../HISE/hi_backend/../hi_modules/../hi_scripting/../hi_sampler/../hi_components/../hi_dsp/../hi_core/hi_core.h:68,
                                   from ../../../../../HISE/hi_backend/../hi_modules/../hi_scripting/../hi_sampler/../hi_components/../hi_dsp/hi_dsp.h:55,
                                   from ../../../../../HISE/hi_backend/../hi_modules/../hi_scripting/../hi_sampler/../hi_components/hi_components.h:57,
                                   from ../../../../../HISE/hi_backend/../hi_modules/../hi_scripting/../hi_sampler/hi_sampler.h:54,
                                   from ../../../../../HISE/hi_backend/../hi_modules/../hi_scripting/hi_scripting.h:61,
                                   from ../../../../../HISE/hi_backend/../hi_modules/hi_modules.h:57,
                                   from ../../../../../HISE/hi_backend/hi_backend.h:55,
                                   from ../../Source/../JuceLibraryCode/JuceHeader.h:17,
                                   from ../../Source/MainComponent.h:12,
                                   from ../../Source/MainComponent.cpp:12:
                  ../../../../../HISE/hi_backend/../hi_modules/../hi_scripting/../hi_sampler/../hi_components/../hi_dsp/../hi_core/../JUCE/modules/juce_dsp/native/juce_avx_SIMDNativeOps.h:51:8: note: declaration of ‘struct juce::dsp::SIMDNativeOps<long long int>’
                   struct SIMDNativeOps;
                          ^
                  In file included from ../../../../../HISE/hi_backend/../hi_modules/../hi_scripting/hi_scripting.h:95:0,
                                   from ../../../../../HISE/hi_backend/../hi_modules/hi_modules.h:57,
                                   from ../../../../../HISE/hi_backend/hi_backend.h:55,
                                   from ../../Source/../JuceLibraryCode/JuceHeader.h:17,
                                   from ../../Source/MainComponent.h:12,
                                   from ../../Source/MainComponent.cpp:12:
                  ../../../../../HISE/hi_backend/../hi_modules/../hi_scripting/scripting/api/ScriptingApiContent.h: In member function ‘Subtype* hise::ScriptingApi::Content::addComponent(juce::Identifier, int, int)’:
                  ../../../../../HISE/hi_backend/../hi_modules/../hi_scripting/scripting/api/ScriptingApiContent.h:1946:40: error: invalid use of incomplete type ‘class hise::ProcessorWithScriptingContent’
                     var savedValue = getScriptProcessor()->getSavedValue(name);
                                                          ^
                  In file included from ../../../../../HISE/hi_backend/../hi_modules/../hi_scripting/hi_scripting.h:72:0,
                                   from ../../../../../HISE/hi_backend/../hi_modules/hi_modules.h:57,
                                   from ../../../../../HISE/hi_backend/hi_backend.h:55,
                                   from ../../Source/../JuceLibraryCode/JuceHeader.h:17,
                                   from ../../Source/MainComponent.h:12,
                                   from ../../Source/MainComponent.cpp:12:
                  ../../../../../HISE/hi_backend/../hi_modules/../hi_scripting/scripting/api/ScriptingBaseObjects.h:39:7: note: forward declaration of ‘class hise::ProcessorWithScriptingContent’
                   class ProcessorWithScriptingContent;
                         ^
                  At global scope:
                  cc1plus: warning: unrecognized command line option ‘-Wno-inconsistent-missing-override’
                  Makefile:143: recipe for target 'build/intermediate/Release/MainComponent_a6ffb4a5.o' failed
                  make: *** [build/intermediate/Release/MainComponent_a6ffb4a5.o] Error 1
                  
                  

                  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

                    That was a weird one. It was actually something in the JUCE code of the new juce_dsp module. Please check if it works now - I can compile the standalone version of the demo project found in the HISE repository on Linux.

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

                      @christoph-hart Thanks I'll check it out later tonight. Some guys on the LinuxMusicians forum are having issues with the Juce executable - https://www.linuxmusicians.com/viewtopic.php?p=92369#p92369

                      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

                        It appears that the Projucer has some flags enabled that require i7 CPUs, which is most likely the cause of the illegal instruction errors.

                        Source: https://forum.juce.com/t/linux-projucer-crashes-on-startup/18320/8

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

                          Latest build fails:

                          Compiling include_hi_sampler.cpp
                          In file included from ../../../../../HISE/hi_sampler/hi_sampler.cpp:42:0,
                                           from ../../JuceLibraryCode/include_hi_sampler.cpp:9:
                          ../../../../../HISE/hi_sampler/sampler/ModulatorSamplerSound.cpp: In member function ‘int hise::ModulatorSamplerSoundPool::getSoundIndexFromPool(juce::int64, juce::int64)’:
                          ../../../../../HISE/hi_sampler/sampler/ModulatorSamplerSound.cpp:1163:40: error: conversion from ‘juce::WeakReference<hise::StreamingSamplerSound>’ to non-scalar type ‘hise::StreamingSamplerSound::Ptr {aka juce::ReferenceCountedObjectPtr<hise::StreamingSamplerSound>}’ requested
                             StreamingSamplerSound::Ptr s = pool[i];
                                                                  ^
                          At global scope:
                          cc1plus: warning: unrecognized command line option ‘-Wno-inconsistent-missing-override’
                          Makefile:193: recipe for target 'build/intermediate/Release/include_hi_sampler_50722b2a.o' failed
                          make: *** [build/intermediate/Release/include_hi_sampler_50722b2a.o] Error 1
                          

                          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 fixed now.

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

                              I'm still getting this when trying to export a standalone instrument from HISE

                              In file included from ../../JuceLibraryCode/JuceHeader.h:21:0,
                                               from ../../Source/Plugin.cpp:2:
                              ../../Source/Plugin.cpp: In member function ‘juce::AudioProcessor* hise::StandaloneProcessor::createProcessor()’:
                              /media/dave/work1/HISE Development Builds/HISE/hi_frontend/hi_frontend.h:116:67: error: ‘images’ is not a member of ‘PresetData’
                                ValueTree imageData = hise::PresetHandler::loadValueTreeFromData(PresetData::images, PresetData::imagesSize, false);\
                                                                                                 ^
                              ../../Source/Plugin.cpp:12:64: note: in expansion of macro ‘CREATE_PLUGIN_WITH_AUDIO_FILES’
                               AudioProcessor* hise::StandaloneProcessor::createProcessor() { CREATE_PLUGIN_WITH_AUDIO_FILES(deviceManager, callback); }
                                                                                              ^
                              /media/dave/work1/HISE Development Builds/HISE/hi_frontend/hi_frontend.h:116:87: error: ‘imagesSize’ is not a member of ‘PresetData’
                                ValueTree imageData = hise::PresetHandler::loadValueTreeFromData(PresetData::images, PresetData::imagesSize, false);\
                                                                                                                     ^
                              ../../Source/Plugin.cpp:12:64: note: in expansion of macro ‘CREATE_PLUGIN_WITH_AUDIO_FILES’
                               AudioProcessor* hise::StandaloneProcessor::createProcessor() { CREATE_PLUGIN_WITH_AUDIO_FILES(deviceManager, callback); }
                                                                                              ^
                              /media/dave/work1/HISE Development Builds/HISE/hi_frontend/hi_frontend.h:118:69: error: ‘impulses’ is not a member of ‘PresetData’
                                ValueTree impulseData = hise::PresetHandler::loadValueTreeFromData(PresetData::impulses, PresetData::impulsesSize, false); \
                                                                                                   ^
                              ../../Source/Plugin.cpp:12:64: note: in expansion of macro ‘CREATE_PLUGIN_WITH_AUDIO_FILES’
                               AudioProcessor* hise::StandaloneProcessor::createProcessor() { CREATE_PLUGIN_WITH_AUDIO_FILES(deviceManager, callback); }
                                                                                              ^
                              /media/dave/work1/HISE Development Builds/HISE/hi_frontend/hi_frontend.h:118:91: error: ‘impulsesSize’ is not a member of ‘PresetData’
                                ValueTree impulseData = hise::PresetHandler::loadValueTreeFromData(PresetData::impulses, PresetData::impulsesSize, false); \
                                                                                                                         ^
                              ../../Source/Plugin.cpp:12:64: note: in expansion of macro ‘CREATE_PLUGIN_WITH_AUDIO_FILES’
                               AudioProcessor* hise::StandaloneProcessor::createProcessor() { CREATE_PLUGIN_WITH_AUDIO_FILES(deviceManager, callback); }
                                                                                              ^
                              Makefile:111: recipe for target 'build/intermediate/Release/Plugin_124bbd3c.o' failed
                              

                              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

                                Last time I checked this had something to do with the EmbedAudioFiles setting. Try changing that and test if the problem persists.

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

                                  @christoph-hart Thanks that fixed it, I had to check the box!

                                  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

                                    Yeah I changed the default value to yes for new projects a while ago so this only happens if you load old projects.

                                    1 Reply Last reply Reply Quote 1
                                    • AxiomCruxA
                                      AxiomCrux @d.healey
                                      last edited by

                                      @d-healey said in Linux build of HISE:

                                      I tried it in Reaper running under Wine but no luck.

                                      AFAIK despite the implications of "Wine is not an emulator" being it's acronym, it functions alot like one, and I can confirm that in my tests of using WINE to package applications on osx it seems more like a single application virtual machine and thus would want windows vsts.

                                      @d-healey said in Linux build of HISE:

                                      I have HISE working in Carla and have this playing back via virtual MIDI ports from both the Linux native version of Reaper and Windows Reaper running in Wine

                                      In reference to my above assumption, did you have to use the windows VST in the Reaper Windows Wine?

                                      @Christoph-Hart the notion of using HISE on linux has some intriguing implications. I was just imagining the possibility of using embedded linux/HISE as the basis for a multisampler based workstation keyboard style hardware, not that such a thing is in my plans in the near future.. but that would be pretty awesome.

                                      http://www.axiom-crux.net

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

                                        @macromachines I can't remember what I was doing back then exactly. But now I'm using the Linux native version of Reaper and HISE has Linux export so I'm not using WINE at all for this.

                                        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

                                          GitHub master currently failing on Linux Mint

                                          Makefile:188: recipe for target 'build/intermediate/Release/include_hi_modules_263b29.o' failed
                                          make: *** [build/intermediate/Release/include_hi_modules_263b29.o] Error 1
                                          

                                          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

                                            Oops, I didn't touch the master branch for a long time. I'll take a look what's wrong there.

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

                                            8

                                            Online

                                            1.8k

                                            Users

                                            12.0k

                                            Topics

                                            104.5k

                                            Posts