HISE Logo Forum
    • Categories
    • Register
    • Login

    Compiling Faust based ScriptNodes on MacOS:Problem

    Scheduled Pinned Locked Moved General Questions
    38 Posts 5 Posters 1.5k 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.
    • LindonL
      Lindon @Lindon
      last edited by

      @Lindon so going to the named offending line we get:

      struct FaustDistTestFileMetaData {
      		SN_NODE_ID("FaustDistTestFile");
      };
      

      ~So my rubbish C++ fails at this point - I have no real idea what this is trying to do, or more importantly what its looking for and where.

      We have both FaustDistTestFile.cpp and FaustDistTestFile.h

      HISE Development for hire.
      www.channelrobot.com

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

        @Lindon said in Compiling Faust based ScriptNodes on MacOS:Problem:

        So my rubbish C++ fails at this point

        When in doubt, comment it out :)

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

        LindonL 1 Reply Last reply Reply Quote 0
        • LindonL
          Lindon @d.healey
          last edited by Lindon

          @d-healey lol, Ok, well I tried that - but its an auto generated file so it keeps putting it back in....actually its more likely my failings with XCode, but I commented it out saved it and immediately ran the compile and got this error:

          ❌  /Volumes/Untitled/Morphestra Ultra/DspNetworks/Binaries/Source/FaustDistTestFile~.h:3:10: '../../ThirdParty/FaustDistTestFile~.h' file not found
          

          HISE Development for hire.
          www.channelrobot.com

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

            @Lindon Well it was worth a try :) I have no idea how to solve the issue, you'll probably have to wait for Christoph to return from the void.

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

            LindonL 1 Reply Last reply Reply Quote 0
            • LindonL
              Lindon @d.healey
              last edited by

              @d-healey said in Compiling Faust based ScriptNodes on MacOS:Problem:

              @Lindon Well it was worth a try :) I have no idea how to solve the issue, you'll probably have to wait for Christoph to return from the void.

              any idea when this might be? even roughly?

              HISE Development for hire.
              www.channelrobot.com

              d.healeyD LindonL 2 Replies Last reply Reply Quote 0
              • d.healeyD
                d.healey @Lindon
                last edited by

                @Lindon No idea, he won't share his calendar with me :(

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

                1 Reply Last reply Reply Quote 1
                • LindonL
                  Lindon @Lindon
                  last edited by

                  So just checking I'm not doing something stupid...

                  What should be the Faust Path in my Settings on MacOS?

                  Currently its: /Users/lindonparker/HISE/tools/faust

                  HISE Development for hire.
                  www.channelrobot.com

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

                    @Lindon Looks correct, this is from the readme

                    When the build succeeded you need to go into the HISE Settings and set the FaustPath folder to the root folder of your faust installation (HISE_ROOT/tools/faust/), otherwise it won't find the libraries and any Faust compilation will fail.

                    If you're running it for the first time, the macOS gatekeeper might complain about the unsigned faust libraries, so you need to go into the security settings and manually allow the execution in there.

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

                    LindonL 1 Reply Last reply Reply Quote 0
                    • LindonL
                      Lindon @d.healey
                      last edited by

                      @d-healey yeah - cant work out what it is Im doing wrong ...I guess I will have to wait for @Christoph-Hart

                      HISE Development for hire.
                      www.channelrobot.com

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

                        @Lindon are you using the latest version of HISE and Faust?

                        There was an issue where the compiler didn‘t pickup the C++ file that was generated by Faust but the most recent versions of both should fix that.

                        Oh and I‘m currently in Greece on vacation until September 1st so there is my calendar :)

                        LindonL 2 Replies Last reply Reply Quote 3
                        • LindonL
                          Lindon @Christoph Hart
                          last edited by

                          @Christoph-Hart said in Compiling Faust based ScriptNodes on MacOS:Problem:

                          @Lindon are you using the latest version of HISE and Faust?

                          There was an issue where the compiler didn‘t pickup the C++ file that was generated by Faust but the most recent versions of both should fix that.

                          Oh and I‘m currently in Greece on vacation until September 1st so there is my calendar :)

                          yes - Im on the latest of both - but I will download them again and retry - I hope you are having a good time in Greece.

                          HISE Development for hire.
                          www.channelrobot.com

                          1 Reply Last reply Reply Quote 0
                          • LindonL
                            Lindon @Christoph Hart
                            last edited by

                            @Christoph-Hart OK well sadly that didnt fix it, I downloaded the latest HISE and the Latest Faust and I still get these errors:

                            ❌  /Volumes/Untitled/Morphestra Ultra/DspNetworks/Binaries/Source/FaustDistTest.h:20:56: no member named 'FaustDistTestFile' in namespace 'project'
                            
                                                             wrap::fix<2, project::FaustDistTestFile<NV>>>;
                                                                          ~~~~~~~~~^
                            
                            
                            
                            ❌  /Volumes/Untitled/Morphestra Ultra/DspNetworks/Binaries/Source/FaustDistTest.h:20:79: expected ';' after alias declaration
                            
                                                             wrap::fix<2, project::FaustDistTestFile<NV>>>;
                                                                                                          ^
                            
                            
                            
                            ❌  /Volumes/Untitled/Morphestra Ultra/DspNetworks/Binaries/Source/FaustDistTest.h:27:41: no member named 'FaustDistTestFile' in namespace 'project'
                            
                            using Drive = parameter::plain<project::FaustDistTestFile<NV>, 
                                                           ~~~~~~~~~^
                            
                            
                            
                            ❌  /Volumes/Untitled/Morphestra Ultra/DspNetworks/Binaries/Source/FaustDistTest.h:27:62: expected ';' after alias declaration
                            
                            using Drive = parameter::plain<project::FaustDistTestFile<NV>, 
                                                                                         ^
                            
                            

                            Looks like I will have to wait until you get back.

                            HISE Development for hire.
                            www.channelrobot.com

                            AxiomCruxA 1 Reply Last reply Reply Quote 0
                            • AxiomCruxA
                              AxiomCrux @Lindon
                              last edited by

                              @Lindon I can't seem to get the HISE release with faust to build, I put the newest release version of faust into the folders specified and the projucer export to xcode and then when I build I get these two errors:

                              Undefined symbols:
                              Linker command failed with exit code 1 (use -v to see invocation)
                              

                              also the projucer says my juce path is incorrect

                              http://www.axiom-crux.net

                              LindonL 1 Reply Last reply Reply Quote 0
                              • LindonL
                                Lindon @AxiomCrux
                                last edited by

                                @AxiomCrux said in Compiling Faust based ScriptNodes on MacOS:Problem:

                                @Lindon I can't seem to get the HISE release with faust to build, I put the newest release version of faust into the folders specified and the projucer export to xcode and then when I build I get these two errors:

                                Undefined symbols:
                                Linker command failed with exit code 1 (use -v to see invocation)
                                

                                also the projucer says my juce path is incorrect

                                you need to start with HISE develop not HISE release..

                                HISE Development for hire.
                                www.channelrobot.com

                                AxiomCruxA 1 Reply Last reply Reply Quote 0
                                • AxiomCruxA
                                  AxiomCrux @Lindon
                                  last edited by

                                  @Lindon i noticed that after re-reading your steps. I guess I thought it would still work as the infrastructure for faust seems to be in scriptnode in the release version 4.0.0

                                  i do wonder about compatibility issues and possible dev branch bugs so maybe ill finish off what im doing in 4.0.0 and then compile the dev build with faust after.

                                  i am very excited about the possibilities of bringing some of the cool things ive made in faust/rnbo/gen dsp to be useful for others.

                                  i am also keen on the scriptnode, i got a pretty unique synth in my first test

                                  http://www.axiom-crux.net

                                  LindonL 1 Reply Last reply Reply Quote 0
                                  • LindonL
                                    Lindon @AxiomCrux
                                    last edited by

                                    @AxiomCrux vgreat - I look forward to seeing what you build.

                                    But first I think I need @Christoph-Hart to take a look at this one when he gets back.

                                    HISE Development for hire.
                                    www.channelrobot.com

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

                                      @Lindon Just checked it and it compiles here fine.

                                      So the error message says that the compiler can't find the C++ class FaustDistTestFile generated by the Faust compiler when trying to compile the scriptnode wrapper network FaustDistTest. Can you post the content of the include file found in Binaries/Source/includes.h?

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

                                        This is how my include file looks:

                                        
                                        // [...]
                                        
                                        #pragma clang diagnostic ignored "-Wunused-variable"
                                        #endif
                                        
                                        // Include third party header files ----------------
                                        
                                        #include "FaustDistTestFile.h" 
                                        
                                        // Include compiled network files ------------------
                                        
                                        #include "BitRed01.h"
                                        #include "ChorusTest.h"
                                        #include "DirtModule.h"
                                        #include "FaustDistTest.h"
                                        #include "LoHiFilter.h"
                                        #include "PassThru.h"
                                        
                                        // [...]
                                        
                                        

                                        If I comment out #include "FaustDistTestFile.h" , then the compilation fails with the exact message that you posted, so it's definitely failing to find the faust file.

                                        LindonL 1 Reply Last reply Reply Quote 0
                                        • LindonL
                                          Lindon @Christoph Hart
                                          last edited by

                                          @Christoph-Hart well yes mine looks very differnt to yours:

                                          /* Autogenerated include file. */
                                          #if (defined (_WIN32) || defined (_WIN64))
                                          #pragma warning( push )
                                          #pragma warning( disable : 4189 4373)
                                          #else
                                          #pragma clang diagnostic push
                                          #pragma clang diagnostic ignored "-Wunused-variable"
                                          #endif
                                          
                                          // Include compiled network files ------------------
                                          
                                          #include "BitRed01.h"
                                          #include "ChorusTest.h"
                                          #include "DirtModule.h"
                                          #include "FaustDistTest.h"
                                          #include "LoHiFilter.h"
                                          #include "PassThru.h"
                                          #include "Phasertest1.h"
                                          #include "pingpong.h"
                                          #include "StereoDelay.h"
                                          #include "TapeDelay.h"
                                          
                                          #if (defined (_WIN32) || defined (_WIN64))
                                          #pragma warning( pop )
                                          #else
                                          #pragma clang diagnostic pop
                                          #endif
                                          

                                          HISE Development for hire.
                                          www.channelrobot.com

                                          LindonL 1 Reply Last reply Reply Quote 0
                                          • LindonL
                                            Lindon @Lindon
                                            last edited by Lindon

                                            @Lindon and its definitely there:
                                            Screenshot 2024-09-10 at 13.40.12.png

                                            HISE Development for hire.
                                            www.channelrobot.com

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

                                            7

                                            Online

                                            1.7k

                                            Users

                                            11.8k

                                            Topics

                                            102.3k

                                            Posts