radium icon indicating copy to clipboard operation
radium copied to clipboard

Radium not building on Debian testing

Open grammoboy2 opened this issue 4 years ago • 40 comments

Latest Radium from git doesn't build on Debian testing:

_make packages bash check_dependencies.sh ./find_python_path.sh "/home/user/develop/radium/find_moc_and_uic_paths.sh moc" "/home/user/develop/radium/find_moc_and_uic_paths.sh uic" test_packages

Checking dependencies: /usr/bin/sed sed found /usr/bin/python2 /usr/bin/python2 found /usr/bin/guile guile found testing packages /usr/bin/ld: cannot find -liberty collect2: error: ld returned 1 exit status Couldn't find -lbfd, -ldl, -liberty, or header files for bfd or dlfcn. On Fedora, binutils-devel, libtool-ltdl or libtool might be missing. On Debian, libc6-dev or binutils-dev might be missing. make: *** [Makefile:712: bin/packages/deletemetorebuild] Error_

ibc6-dev and binutils-dev are installed though.

grammoboy2 avatar Apr 25 '20 23:04 grammoboy2

Maybe install libiberty-dev ?

kmatheussen avatar Apr 29 '20 20:04 kmatheussen

Have you installed the packages in #1245

kmatheussen avatar Apr 29 '20 20:04 kmatheussen

On 4/29/20 10:09 PM, Kjetil Matheussen wrote:

Have you installed the packages in #1245 https://github.com/kmatheussen/radium/issues/1245

Thanks. Yes, but

libiberty-dev libsamplerate0-dev

where missing probably.

grammoboy2 avatar Apr 29 '20 20:04 grammoboy2

On 4/29/20 10:15 PM, rosea.grammostola wrote:

On 4/29/20 10:09 PM, Kjetil Matheussen wrote:

Have you installed the packages in #1245 https://github.com/kmatheussen/radium/issues/1245

Thanks. Yes, but

libiberty-dev libsamplerate0-dev

where missing probably.

Is it possible to build without VST?

Or how to edit the build process so it finds the needed vst file?

Seems that the VST folders is re-arranged (not that I have experience with VST) and that the filename is changed.

 tree SDKs/ | grep effect.h     │               ├── audioeffect.h         │       │   ├── vstaudioeffect.h         │       │   ├── vstsinglecomponenteffect.h

~/SDKs/VST_SDK/VST2_SDK/public.sdk/source/vst2.x$ ls aeffeditor.h  audioeffect.cpp  audioeffect.h  audioeffectx.cpp audioeffectx.h  vstplugmain.cpp

grammoboy2 avatar Apr 29 '20 20:04 grammoboy2

Is it possible to build without VST?

Or how to edit the build process so it finds the needed vst file?

Seems that the VST folders is re-arranged (not that I have experience with VST) and that the filename is changed.

 tree SDKs/ | grep effect.h     │               ├── audioeffect.h         │       │   ├── vstaudioeffect.h         │       │   ├── vstsinglecomponenteffect.h

~/SDKs/VST_SDK/VST2_SDK/public.sdk/source/vst2.x$ ls aeffeditor.h  audioeffect.cpp  audioeffect.h  audioeffectx.cpp audioeffectx.h  vstplugmain.cpp

Ok, I changed the filename and made the folder tree manually. Seems to work.

grammoboy2 avatar Apr 29 '20 21:04 grammoboy2

On 4/29/20 11:36 PM, rosea.grammostola wrote:

Is it possible to build without VST?

Or how to edit the build process so it finds the needed vst file?

Seems that the VST folders is re-arranged (not that I have experience with VST) and that the filename is changed.

 tree SDKs/ | grep effect.h     │               ├── audioeffect.h         │       │   ├── vstaudioeffect.h         │       │   ├── vstsinglecomponenteffect.h

~/SDKs/VST_SDK/VST2_SDK/public.sdk/source/vst2.x$ ls aeffeditor.h  audioeffect.cpp  audioeffect.h  audioeffectx.cpp audioeffectx.h  vstplugmain.cpp

That was too easy probably...

Compiling audio/VST_plugins.cpp... In file included from /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/audioeffect.h:37,                  from /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:37,                  from audio/VST_plugins.cpp:77: /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffect.h:48:34: error: expected ‘)’ before ‘audioMaster’    48 |  AudioEffect (audioMasterCallback audioMaster, VstInt32 numPrograms, VstInt32 numParams); ///< Create an \e AudioEffect object       |              ~                   ^~~~~~~~~~~~       |                                  ) /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffect.h:51:10: error: ‘VstIntPtr’ does not name a type    51 |  virtual VstIntPtr dispatcher (VstInt32 opcode, VstInt32 index, VstIntPtr value, void* ptr, float opt); ///< Opcodes dispatcher       |          ^~~~~~~~~ In file included from /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/audioeffect.h:37,                  from /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:37,                  from audio/VST_plugins.cpp:77: /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffect.h:68:29: error: ‘VstInt32’ has not been declared    68 |  virtual void setBlockSize (VstInt32 blockSize) { this->blockSize = blockSize; }  ///< Called when the Maximun block size changes (always in a suspend state). Note that the sampleFrames in Process Calls could be smaller than this block size, but NOT bigger.       |                             ^~~~~~~~ In file included from /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/audioeffect.h:37,                  from /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:37,                  from audio/VST_plugins.cpp:77: /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffect.h:70:66: error: ‘VstInt32’ has not been declared    70 |  virtual void processReplacing (float** inputs, float** outputs, VstInt32 sampleFrames) = 0; ///< Process 32 bit (single precision) floats (always in a resume state) | ^~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffect.h:81:29: error: ‘VstInt32’ has not been declared    81 |  virtual void setParameter (VstInt32 index, float value) {} ///< Called when a parameter changed       |                             ^~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffect.h:82:30: error: ‘VstInt32’ has not been declared    82 |  virtual float getParameter (VstInt32 index) { return 0; } ///< Return the value of the parameter with \e index       |                              ^~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffect.h:83:38: error: ‘VstInt32’ has not been declared    83 |  virtual void setParameterAutomated (VstInt32 index, float value);///< Called after a control has changed in the editor and when the associated parameter should be automated       |                                      ^~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffect.h:90:10: error: ‘VstInt32’ does not name a type    90 |  virtual VstInt32 getProgram () { return curProgram; } ///< Return the index to the current program       |          ^~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffect.h:91:27: error: ‘VstInt32’ has not been declared    91 |  virtual void setProgram (VstInt32 program) { curProgram = program; } ///< Set the current program to \e program       |                           ^~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffect.h:96:34: error: ‘VstInt32’ has not been declared    96 |  virtual void getParameterLabel (VstInt32 index, char* label)  { label = 0; } ///< Stuff \e label with the units in which parameter \e index is displayed (i.e. "sec", "dB", "type", etc...). Limited to #kVstMaxParamStrLen.       |                                  ^~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffect.h:97:36: error: ‘VstInt32’ has not been declared    97 |  virtual void getParameterDisplay (VstInt32 index, char text) { text = 0; } ///< Stuff \e text with a string representation ("0.5", "-3", "PLATE", etc...) of the value of parameter \e index. Limited to #kVstMaxParamStrLen.       |                                    ^~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffect.h:98:33: error: ‘VstInt32’ has not been declared    98 |  virtual void getParameterName (VstInt32 index, char text)    { text = 0; }    ///< Stuff \e text with the name ("Time", "Gain", "RoomType", etc...) of parameter \e index. Limited to #kVstMaxParamStrLen.       |                                 ^~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffect.h:100:10: error: ‘VstInt32’ does not name a type   100 |  virtual VstInt32 getChunk (void* data, bool isPreset = false) { return 0; } ///< Host stores plug-in state. Returns the size in bytes of the chunk (plug-in allocates the data array)       |          ^~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffect.h:101:10: error: ‘VstInt32’ does not name a type   101 |  virtual VstInt32 setChunk (void* data, VstInt32 byteSize, bool isPreset = false) { return 0; } ///< Host restores plug-in state       |          ^~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffect.h:108:28: error: ‘VstInt32’ has not been declared   108 |  virtual void setUniqueID (VstInt32 iD)        { cEffect.uniqueID = iD; }  ///< Must be called to set the plug-ins unique ID!       |                            ^~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffect.h:109:29: error: ‘VstInt32’ has not been declared   109 |  virtual void setNumInputs (VstInt32 inputs)   { cEffect.numInputs = inputs; } ///< Set the number of inputs the plug-in will handle. For a plug-in which could change its IO configuration, this number is the maximun available inputs.       |                             ^~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffect.h:110:30: error: ‘VstInt32’ has not been declared   110 |  virtual void setNumOutputs (VstInt32 outputs) { cEffect.numOutputs = outputs; } ///< Set the number of outputs the plug-in will handle. For a plug-in which could change its IO configuration, this number is the maximun available ouputs.       |                              ^~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffect.h:119:32: error: ‘VstInt32’ has not been declared   119 |  virtual void setInitialDelay (VstInt32 delay);  ///< Use to report the plug-in's latency (Group Delay)       |                                ^~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffect.h:134:10: error: ‘AEffect’ does not name a type; did you mean ‘AudioEffect’?   134 |  virtual AEffect* getAeffect ()   { return &cEffect; }  ///< Returns the #AEffect structure       |          ^~~~~~~       |          AudioEffect /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffect.h:136:10: error: ‘VstInt32’ does not name a type   136 |  virtual VstInt32 getBlockSize () { return blockSize; } ///< Returns the current Maximum block size       |          ^~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffect.h:143:10: error: ‘VstInt32’ does not name a type   143 |  virtual VstInt32 getMasterVersion ();  ///< Returns the Host's version (for example 2400 for VST 2.4)       |          ^~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffect.h:144:10: error: ‘VstInt32’ does not name a type   144 |  virtual VstInt32 getCurrentUniqueId ();  ///< Returns current unique identifier when loading shell plug-ins       |          ^~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffect.h:152:51: error: ‘VstInt32’ has not been declared   152 |  virtual void dB2string (float value, char* text, VstInt32 maxLen);  ///< Stuffs \e text with an amplitude on the [0.0, 1.0] scale converted to its value in decibels.       |                                                   ^~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffect.h:153:53: error: ‘VstInt32’ has not been declared   153 |  virtual void Hz2string (float samples, char* text, VstInt32 maxLen); ///< Stuffs \e text with the frequency in Hertz that has a period of \e samples.       | ^~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffect.h:154:53: error: ‘VstInt32’ has not been declared   154 |  virtual void ms2string (float samples, char* text, VstInt32 maxLen); ///< Stuffs \e text with the duration in milliseconds of \e samples frames.       | ^~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffect.h:155:54: error: ‘VstInt32’ has not been declared   155 |  virtual void float2string (float value, char* text, VstInt32 maxLen); ///< Stuffs \e text with a string representation on the floating point \e value.       | ^~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffect.h:156:27: error: ‘VstInt32’ has not been declared   156 |  virtual void int2string (VstInt32 value, char* text, VstInt32 maxLen); ///< Stuffs \e text with a string representation on the integer \e value.       |                           ^~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffect.h:156:55: error: ‘VstInt32’ has not been declared   156 |  virtual void int2string (VstInt32 value, char* text, VstInt32 maxLen); ///< Stuffs \e text with a string representation on the integer \e value.       | ^~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffect.h:163:39: error: ‘process’ has not been declared   163 |  virtual void DECLARE_VST_DEPRECATED (process) (float** inputs, float** outputs, VstInt32 sampleFrames) {}       |                                       ^~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffect.h:163:82: error: ‘VstInt32’ has not been declared   163 |  virtual void DECLARE_VST_DEPRECATED (process) (float** inputs, float** outputs, VstInt32 sampleFrames) {} | ^~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffect.h:163:10: error: ‘DECLARE_VST_DEPRECATED’ declared as function returning a function   163 |  virtual void DECLARE_VST_DEPRECATED (process) (float** inputs, float** outputs, VstInt32 sampleFrames) {}       |          ^~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffect.h:164:40: error: ‘getVu’ has not been declared   164 |  virtual float DECLARE_VST_DEPRECATED (getVu) () { return 0; }       |                                        ^~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffect.h:164:10: error: ‘DECLARE_VST_DEPRECATED’ declared as function returning a function   164 |  virtual float DECLARE_VST_DEPRECATED (getVu) () { return 0; }       |          ^~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffect.h:165:39: error: ‘hasVu’ has not been declared   165 |  virtual void DECLARE_VST_DEPRECATED (hasVu) (bool state = true);       |                                       ^~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffect.h:165:58: error: default arguments are only permitted for function parameters [-fpermissive]   165 |  virtual void DECLARE_VST_DEPRECATED (hasVu) (bool state = true);       |                                                          ^ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffect.h:165:10: error: ‘DECLARE_VST_DEPRECATED’ declared as function returning a function   165 |  virtual void DECLARE_VST_DEPRECATED (hasVu) (bool state = true);       |          ^~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffect.h:166:39: error: ‘hasClip’ has not been declared   166 |  virtual void DECLARE_VST_DEPRECATED (hasClip) (bool state = true);       |                                       ^~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffect.h:166:60: error: default arguments are only permitted for function parameters [-fpermissive]   166 |  virtual void DECLARE_VST_DEPRECATED (hasClip) (bool state = true);       | ^ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffect.h:166:10: error: ‘DECLARE_VST_DEPRECATED’ declared as function returning a function   166 |  virtual void DECLARE_VST_DEPRECATED (hasClip) (bool state = true);       |          ^~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffect.h:167:39: error: ‘canMono’ has not been declared   167 |  virtual void DECLARE_VST_DEPRECATED (canMono) (bool state = true);       |                                       ^~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffect.h:167:60: error: default arguments are only permitted for function parameters [-fpermissive]   167 |  virtual void DECLARE_VST_DEPRECATED (canMono) (bool state = true);       | ^ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffect.h:167:10: error: ‘DECLARE_VST_DEPRECATED’ declared as function returning a function   167 |  virtual void DECLARE_VST_DEPRECATED (canMono) (bool state = true);       |          ^~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffect.h:168:39: error: ‘setRealtimeQualities’ has not been declared   168 |  virtual void DECLARE_VST_DEPRECATED (setRealtimeQualities) (VstInt32 qualities);       |                                       ^~~~~~~~~~~~~~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffect.h:168:62: error: ‘VstInt32’ has not been declared   168 |  virtual void DECLARE_VST_DEPRECATED (setRealtimeQualities) (VstInt32 qualities); | ^~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffect.h:168:10: error: ‘DECLARE_VST_DEPRECATED’ declared as function returning a function   168 |  virtual void DECLARE_VST_DEPRECATED (setRealtimeQualities) (VstInt32 qualities);       |          ^~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffect.h:169:39: error: ‘setOfflineQualities’ has not been declared   169 |  virtual void DECLARE_VST_DEPRECATED (setOfflineQualities) (VstInt32 qualities);       |                                       ^~~~~~~~~~~~~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffect.h:169:61: error: ‘VstInt32’ has not been declared   169 |  virtual void DECLARE_VST_DEPRECATED (setOfflineQualities) (VstInt32 qualities); | ^~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffect.h:169:10: error: ‘DECLARE_VST_DEPRECATED’ declared as function returning a function   169 |  virtual void DECLARE_VST_DEPRECATED (setOfflineQualities) (VstInt32 qualities);       |          ^~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffect.h:170:39: error: ‘isInputConnected’ has not been declared   170 |  virtual bool DECLARE_VST_DEPRECATED (isInputConnected) (VstInt32 input);       |                                       ^~~~~~~~~~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffect.h:170:58: error: ‘VstInt32’ has not been declared   170 |  virtual bool DECLARE_VST_DEPRECATED (isInputConnected) (VstInt32 input);       | ^~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffect.h:170:10: error: ‘DECLARE_VST_DEPRECATED’ declared as function returning a function   170 |  virtual bool DECLARE_VST_DEPRECATED (isInputConnected) (VstInt32 input);       |          ^~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffect.h:171:39: error: ‘isOutputConnected’ has not been declared   171 |  virtual bool DECLARE_VST_DEPRECATED (isOutputConnected) (VstInt32 output);       |                                       ^~~~~~~~~~~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffect.h:171:59: error: ‘VstInt32’ has not been declared   171 |  virtual bool DECLARE_VST_DEPRECATED (isOutputConnected) (VstInt32 output);       | ^~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffect.h:171:10: error: ‘DECLARE_VST_DEPRECATED’ declared as function returning a function   171 |  virtual bool DECLARE_VST_DEPRECATED (isOutputConnected) (VstInt32 output);       |          ^~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffect.h:176:2: error: ‘audioMasterCallback’ does not name a type   176 |  audioMasterCallback audioMaster; ///< Host callback       |  ^~~~~~~~~~~~~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffect.h:179:2: error: ‘VstInt32’ does not name a type   179 |  VstInt32 blockSize;     ///< Maximum block size       |  ^~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffect.h:180:2: error: ‘VstInt32’ does not name a type   180 |  VstInt32 numPrograms;    ///< Number of programs       |  ^~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffect.h:181:2: error: ‘VstInt32’ does not name a type   181 |  VstInt32 numParams;     ///< Number of parameters       |  ^~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffect.h:182:2: error: ‘VstInt32’ does not name a type   182 |  VstInt32 curProgram;    ///< Current program       |  ^~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffect.h:183:2: error: ‘AEffect’ does not name a type; did you mean ‘AudioEffect’?   183 |  AEffect  cEffect;     ///< #AEffect object       |  ^~~~~~~       |  AudioEffect /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffect.h:186:9: error: ‘VstIntPtr’ does not name a type   186 |  static VstIntPtr dispatchEffectClass (AEffect* e, VstInt32 opcode, VstInt32 index, VstIntPtr value, void* ptr, float opt);       |         ^~~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffect.h:187:34: error: ‘AEffect’ has not been declared   187 |  static float getParameterClass (AEffect* e, VstInt32 index);       |                                  ^~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffect.h:187:46: error: ‘VstInt32’ has not been declared   187 |  static float getParameterClass (AEffect* e, VstInt32 index);       |                                              ^~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffect.h:188:33: error: ‘AEffect’ has not been declared   188 |  static void setParameterClass (AEffect* e, VstInt32 index, float value);       |                                 ^~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffect.h:188:45: error: ‘VstInt32’ has not been declared   188 |  static void setParameterClass (AEffect* e, VstInt32 index, float value);       |                                             ^~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffect.h:189:38: error: ‘processClass’ has not been declared   189 |  static void DECLARE_VST_DEPRECATED (processClass) (AEffect* e, float** inputs, float** outputs, VstInt32 sampleFrames);       |                                      ^~~~~~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffect.h:189:53: error: ‘AEffect’ has not been declared   189 |  static void DECLARE_VST_DEPRECATED (processClass) (AEffect* e, float** inputs, float** outputs, VstInt32 sampleFrames);       | ^~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffect.h:189:98: error: ‘VstInt32’ has not been declared   189 |  static void DECLARE_VST_DEPRECATED (processClass) (AEffect* e, float** inputs, float** outputs, VstInt32 sampleFrames); | ^~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffect.h:189:9: error: ‘DECLARE_VST_DEPRECATED’ declared as function returning a function   189 |  static void DECLARE_VST_DEPRECATED (processClass) (AEffect* e, float** inputs, float** outputs, VstInt32 sampleFrames);       |         ^~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffect.h:190:37: error: ‘AEffect’ has not been declared   190 |  static void processClassReplacing (AEffect* e, float** inputs, float** outputs, VstInt32 sampleFrames);       |                                     ^~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffect.h:190:82: error: ‘VstInt32’ has not been declared   190 |  static void processClassReplacing (AEffect* e, float** inputs, float** outputs, VstInt32 sampleFrames); | ^~~~~~~~ In file included from /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/audioeffect.h:37,                  from /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:37,                  from audio/VST_plugins.cpp:77: /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffect.h: In member function ‘virtual void AudioEffect::setBlockSize(int)’: /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffect.h:68:57: error: ‘class AudioEffect’ has no member named ‘blockSize’; did you mean ‘setBlockSize’?    68 |  virtual void setBlockSize (VstInt32 blockSize) { this->blockSize = blockSize; }  ///< Called when the Maximun block size changes (always in a suspend state). Note that the sampleFrames in Process Calls could be smaller than this block size, but NOT bigger.       | ^~~~~~~~~       | setBlockSize In file included from /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/audioeffect.h:37,                  from /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:37,                  from audio/VST_plugins.cpp:77: /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffect.h: In member function ‘virtual void AudioEffect::setProgram(int)’: /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffect.h:91:47: error: ‘curProgram’ was not declared in this scope; did you mean ‘setProgram’?    91 |  virtual void setProgram (VstInt32 program) { curProgram = program; } ///< Set the current program to \e program       |                                               ^~~~~~~~~~       |                                               setProgram /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffect.h: In member function ‘virtual void AudioEffect::setUniqueID(int)’: /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffect.h:108:50: error: ‘cEffect’ was not declared in this scope   108 |  virtual void setUniqueID (VstInt32 iD)        { cEffect.uniqueID = iD; }  ///< Must be called to set the plug-ins unique ID!       |                                                  ^~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffect.h: In member function ‘virtual void AudioEffect::setNumInputs(int)’: /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffect.h:109:50: error: ‘cEffect’ was not declared in this scope   109 |  virtual void setNumInputs (VstInt32 inputs)   { cEffect.numInputs = inputs; } ///< Set the number of inputs the plug-in will handle. For a plug-in which could change its IO configuration, this number is the maximun available inputs.       |                                                  ^~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffect.h: In member function ‘virtual void AudioEffect::setNumOutputs(int)’: /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffect.h:110:50: error: ‘cEffect’ was not declared in this scope   110 |  virtual void setNumOutputs (VstInt32 outputs) { cEffect.numOutputs = outputs; } ///< Set the number of outputs the plug-in will handle. For a plug-in which could change its IO configuration, this number is the maximun available ouputs.       |                                                  ^~~~~~~ In file included from /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:37,                  from audio/VST_plugins.cpp:77: /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/audioeffect.h: At global scope: /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/audioeffect.h:44:7: error: redefinition of ‘class AudioEffect’    44 | class AudioEffect       |       ^~~~~~~~~~~ In file included from /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/audioeffect.h:37,                  from /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:37,                  from audio/VST_plugins.cpp:77: /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffect.h:44:7: note: previous definition of ‘class AudioEffect’    44 | class AudioEffect       |       ^~~~~~~~~~~ In file included from audio/VST_plugins.cpp:77: /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:47:35: error: expected ‘)’ before ‘audioMaster’    47 |  AudioEffectX (audioMasterCallback audioMaster, VstInt32 numPrograms, VstInt32 numParams); ///< Create an \e AudioEffectX object       |               ~                   ^~~~~~~~~~~~       |                                   ) In file included from audio/VST_plugins.cpp:77: /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:53:40: error: ‘VstInt32’ has not been declared    53 |  virtual bool canParameterBeAutomated (VstInt32 index) { return true; }   ///< Indicates if a parameter can be automated       |                                        ^~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:54:33: error: ‘VstInt32’ has not been declared    54 |  virtual bool string2parameter (VstInt32 index, char* text) { return false; } ///< Convert a string representation to a parameter value       |                                 ^~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:55:39: error: ‘VstInt32’ has not been declared    55 |  virtual bool getParameterProperties (VstInt32 index, VstParameterProperties* p) { return false; } ///< Return parameter properties       |                                       ^~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:55:55: error: ‘VstParameterProperties’ has not been declared    55 |  virtual bool getParameterProperties (VstInt32 index, VstParameterProperties* p) { return false; } ///< Return parameter properties       | ^~~~~~~~~~~~~~~~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:67:38: error: ‘VstInt32’ has not been declared    67 |  virtual bool getProgramNameIndexed (VstInt32 category, VstInt32 index, char* text) { return false; } ///< Fill \e text with name of program \e index (\e category deprecated in VST 2.4)       |                                      ^~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:67:57: error: ‘VstInt32’ has not been declared    67 |  virtual bool getProgramNameIndexed (VstInt32 category, VstInt32 index, char* text) { return false; } ///< Fill \e text with name of program \e index (\e category deprecated in VST 2.4)       | ^~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:87:10: error: ‘VstInt32’ does not name a type    87 |  virtual VstInt32 updateBlockSize (); ///< Returns block size from Host (may issue getBlockSize())       |          ^~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:88:10: error: ‘VstInt32’ does not name a type    88 |  virtual VstInt32 getInputLatency (); ///< Returns the Audio (maybe ASIO) input latency values       |          ^~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:89:10: error: ‘VstInt32’ does not name a type    89 |  virtual VstInt32 getOutputLatency (); ///< Returns the Audio (maybe ASIO) output latency values       |          ^~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:91:35: error: ‘VstInt32’ has not been declared    91 |  virtual bool getInputProperties (VstInt32 index, VstPinProperties* properties) { return false; } ///< Return the \e properties of output \e index       |                                   ^~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:91:51: error: ‘VstPinProperties’ has not been declared    91 |  virtual bool getInputProperties (VstInt32 index, VstPinProperties* properties) { return false; } ///< Return the \e properties of output \e index       | ^~~~~~~~~~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:92:36: error: ‘VstInt32’ has not been declared    92 |  virtual bool getOutputProperties (VstInt32 index, VstPinProperties* properties) { return false; }///< Return the \e properties of input \e index       |                                    ^~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:92:52: error: ‘VstPinProperties’ has not been declared    92 |  virtual bool getOutputProperties (VstInt32 index, VstPinProperties* properties) { return false; }///< Return the \e properties of input \e index       | ^~~~~~~~~~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:94:38: error: ‘VstSpeakerArrangement’ has not been declared    94 |  virtual bool setSpeakerArrangement (VstSpeakerArrangement* pluginInput, VstSpeakerArrangement* pluginOutput) { return false; } ///< Set the plug-in's speaker arrangements       |                                      ^~~~~~~~~~~~~~~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:94:74: error: ‘VstSpeakerArrangement’ has not been declared    94 |  virtual bool setSpeakerArrangement (VstSpeakerArrangement* pluginInput, VstSpeakerArrangement* pluginOutput) { return false; } ///< Set the plug-in's speaker arrangements | ^~~~~~~~~~~~~~~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:95:38: error: ‘VstSpeakerArrangement’ has not been declared    95 |  virtual bool getSpeakerArrangement (VstSpeakerArrangement** pluginInput, VstSpeakerArrangement** pluginOutput) { pluginInput = 0; pluginOutput = 0; return false; } ///< Return the plug-in's speaker arrangements       |                                      ^~~~~~~~~~~~~~~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:95:75: error: ‘VstSpeakerArrangement’ has not been declared    95 |  virtual bool getSpeakerArrangement (VstSpeakerArrangement pluginInput, VstSpeakerArrangement** pluginOutput) { pluginInput = 0; pluginOutput = 0; return false; } ///< Return the plug-in's speaker arrangements | ^~~~~~~~~~~~~~~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:114:10: error: ‘VstTimeInfo’ does not name a type   114 |  virtual VstTimeInfo getTimeInfo (VstInt32 filter); ///< Get time information from Host       |          ^~~~~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:115:10: error: ‘VstInt32’ does not name a type   115 |  virtual VstInt32 getCurrentProcessLevel ();   ///< Returns the Host's process level       |          ^~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:116:10: error: ‘VstInt32’ does not name a type   116 |  virtual VstInt32 getAutomationState ();    ///< Returns the Host's automation state       |          ^~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:118:10: error: ‘VstInt32’ does not name a type   118 |  virtual VstInt32 processEvents (VstEvents events) { return 0; } ///< Called when new MIDI events come in       |          ^~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:119:28: error: ‘VstEvents’ has not been declared   119 |  bool sendVstEventsToHost (VstEvents* events); ///< Send MIDI events back to Host application       |                            ^~~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:131:34: error: ‘VstVariableIo’ has not been declared   131 |  virtual bool processVariableIo (VstVariableIo* varIo) { return false; }  ///< Used for variable I/O processing (offline processing like timestreching)       |                                  ^~~~~~~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:144:10: error: ‘VstInt32’ does not name a type   144 |  virtual VstInt32 getHostVendorVersion ();  ///< Returns vendor-specific version (for example 3200 for Nuendo 3.2)       |          ^~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:145:10: error: ‘VstIntPtr’ does not name a type   145 |  virtual VstIntPtr hostVendorSpecific (VstInt32 lArg1, VstIntPtr lArg2, void* ptrArg, float floatArg); ///< No specific definition       |          ^~~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:146:10: error: ‘VstInt32’ does not name a type   146 |  virtual VstInt32 canHostDo (char* text);  ///< Reports what the Host is able to do (#hostCanDos in audioeffectx.cpp)       |          ^~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:147:10: error: ‘VstInt32’ does not name a type   147 |  virtual VstInt32 getHostLanguage ();   ///< Returns the Host's language (#VstHostLanguage)       |          ^~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:156:10: error: ‘VstInt32’ does not name a type   156 |  virtual VstInt32 getGetTailSize () { return 0; }///< Returns tail size; 0 is default (return 1 for 'no tail'), used in offline processing too       |          ^~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:161:10: error: ‘VstInt32’ does not name a type   161 |  virtual VstInt32 getVendorVersion () { return 0; } ///< Return vendor-specific version       |          ^~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:162:10: error: ‘VstIntPtr’ does not name a type   162 |  virtual VstIntPtr vendorSpecific (VstInt32 lArg, VstIntPtr lArg2, void* ptrArg, float floatArg) { return 0; } ///< No definition, vendor specific handling       |          ^~~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:163:10: error: ‘VstInt32’ does not name a type   163 |  virtual VstInt32 canDo (char* text) { return 0; } ///< Reports what the plug-in is able to do (#plugCanDos in audioeffectx.cpp)       |          ^~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:164:10: error: ‘VstInt32’ does not name a type   164 |  virtual VstInt32 getVstVersion () { return kVstVersion; } ///< Returns the current VST Version (#kVstVersion)       |          ^~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:165:10: error: ‘VstPlugCategory’ does not name a type   165 |  virtual VstPlugCategory getPlugCategory ();  ///< Specify a category that fits the plug (#VstPlugCategory)       |          ^~~~~~~~~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:186:27: error: ‘VstInt32’ has not been declared   186 |  virtual bool sizeWindow (VstInt32 width, VstInt32 height); ///< Requests to resize the editor window       |                           ^~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:186:43: error: ‘VstInt32’ has not been declared   186 |  virtual bool sizeWindow (VstInt32 width, VstInt32 height); ///< Requests to resize the editor window       |                                           ^~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:217:28: error: ‘VstOfflineTask’ has not been declared   217 |  virtual bool offlineRead (VstOfflineTask* offline, VstOfflineOption option, bool readSource = true);       |                            ^~~~~~~~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:217:53: error: ‘VstOfflineOption’ has not been declared   217 |  virtual bool offlineRead (VstOfflineTask* offline, VstOfflineOption option, bool readSource = true);       | ^~~~~~~~~~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:218:29: error: ‘VstOfflineTask’ has not been declared   218 |  virtual bool offlineWrite (VstOfflineTask* offline, VstOfflineOption option);       |                             ^~~~~~~~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:218:54: error: ‘VstOfflineOption’ has not been declared   218 |  virtual bool offlineWrite (VstOfflineTask* offline, VstOfflineOption option);       | ^~~~~~~~~~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:219:29: error: ‘VstAudioFile’ has not been declared   219 |  virtual bool offlineStart (VstAudioFile* ptr, VstInt32 numAudioFiles, VstInt32 numNewAudioFiles);       |                             ^~~~~~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:219:48: error: ‘VstInt32’ has not been declared   219 |  virtual bool offlineStart (VstAudioFile* ptr, VstInt32 numAudioFiles, VstInt32 numNewAudioFiles);       |                                                ^~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:219:72: error: ‘VstInt32’ has not been declared   219 |  virtual bool offlineStart (VstAudioFile* ptr, VstInt32 numAudioFiles, VstInt32 numNewAudioFiles); | ^~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:220:10: error: ‘VstInt32’ does not name a type   220 |  virtual VstInt32 offlineGetCurrentPass ();       |          ^~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:221:10: error: ‘VstInt32’ does not name a type   221 |  virtual VstInt32 offlineGetCurrentMetaPass ();       |          ^~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:222:30: error: ‘VstAudioFile’ has not been declared   222 |  virtual bool offlineNotify (VstAudioFile* ptr, VstInt32 numAudioFiles, bool start) { return false; }       |                              ^~~~~~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:222:49: error: ‘VstInt32’ has not been declared   222 |  virtual bool offlineNotify (VstAudioFile* ptr, VstInt32 numAudioFiles, bool start) { return false; }       |                                                 ^~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:223:31: error: ‘VstOfflineTask’ has not been declared   223 |  virtual bool offlinePrepare (VstOfflineTask* offline, VstInt32 count) { return false; }       |                               ^~~~~~~~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:223:56: error: ‘VstInt32’ has not been declared   223 |  virtual bool offlinePrepare (VstOfflineTask* offline, VstInt32 count) { return false; }       | ^~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:224:27: error: ‘VstOfflineTask’ has not been declared   224 |  virtual bool offlineRun (VstOfflineTask* offline, VstInt32 count) { return false; }       |                           ^~~~~~~~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:224:52: error: ‘VstInt32’ has not been declared   224 |  virtual bool offlineRun (VstOfflineTask* offline, VstInt32 count) { return false; }       | ^~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:225:10: error: ‘VstInt32’ does not name a type   225 |  virtual VstInt32 offlineGetNumPasses () { return 0; }       |          ^~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:226:10: error: ‘VstInt32’ does not name a type   226 |  virtual VstInt32 offlineGetNumMetaPasses () { return 0; }       |          ^~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:231:10: error: ‘VstIntPtr’ does not name a type   231 |  virtual VstIntPtr dispatcher (VstInt32 opcode, VstInt32 index, VstIntPtr value, void* ptr, float opt);       |          ^~~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:237:39: error: ‘wantEvents’ has not been declared   237 |  virtual void DECLARE_VST_DEPRECATED (wantEvents) (VstInt32 filter = 1);       |                                       ^~~~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:237:52: error: ‘VstInt32’ has not been declared   237 |  virtual void DECLARE_VST_DEPRECATED (wantEvents) (VstInt32 filter = 1);       | ^~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:237:68: error: default arguments are only permitted for function parameters [-fpermissive]   237 |  virtual void DECLARE_VST_DEPRECATED (wantEvents) (VstInt32 filter = 1); | ^ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:237:10: error: ‘DECLARE_VST_DEPRECATED’ declared as function returning a function   237 |  virtual void DECLARE_VST_DEPRECATED (wantEvents) (VstInt32 filter = 1);       |          ^~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:238:10: error: ‘VstInt32’ does not name a type   238 |  virtual VstInt32 DECLARE_VST_DEPRECATED (tempoAt) (VstInt32 pos);       |          ^~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:239:10: error: ‘VstInt32’ does not name a type   239 |  virtual VstInt32 DECLARE_VST_DEPRECATED (getNumAutomatableParameters) ();       |          ^~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:240:10: error: ‘VstInt32’ does not name a type   240 |  virtual VstInt32 DECLARE_VST_DEPRECATED (getParameterQuantization) ();       |          ^~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:241:10: error: ‘VstInt32’ does not name a type   241 |  virtual VstInt32 DECLARE_VST_DEPRECATED (getNumCategories) () { return 1L; }       |          ^~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:242:39: error: ‘copyProgram’ has not been declared   242 |  virtual bool DECLARE_VST_DEPRECATED (copyProgram) (VstInt32 destination) { return false; }       |                                       ^~~~~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:242:53: error: ‘VstInt32’ has not been declared   242 |  virtual bool DECLARE_VST_DEPRECATED (copyProgram) (VstInt32 destination) { return false; }       | ^~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:242:10: error: ‘DECLARE_VST_DEPRECATED’ declared as function returning a function   242 |  virtual bool DECLARE_VST_DEPRECATED (copyProgram) (VstInt32 destination) { return false; }       |          ^~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:243:39: error: ‘needIdle’ has not been declared   243 |  virtual bool DECLARE_VST_DEPRECATED (needIdle) ();       |                                       ^~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:243:10: error: ‘DECLARE_VST_DEPRECATED’ declared as function returning a function   243 |  virtual bool DECLARE_VST_DEPRECATED (needIdle) ();       |          ^~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:244:10: error: ‘AEffect’ does not name a type; did you mean ‘AudioEffect’?   244 |  virtual AEffect* DECLARE_VST_DEPRECATED (getPreviousPlug) (VstInt32 input);       |          ^~~~~~~       |          AudioEffect /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:245:10: error: ‘AEffect’ does not name a type; did you mean ‘AudioEffect’?   245 |  virtual AEffect* DECLARE_VST_DEPRECATED (getNextPlug) (VstInt32 output);       |          ^~~~~~~       |          AudioEffect /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:246:39: error: ‘inputConnected’ has not been declared   246 |  virtual void DECLARE_VST_DEPRECATED (inputConnected) (VstInt32 index, bool state) {}       |                                       ^~~~~~~~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:246:56: error: ‘VstInt32’ has not been declared   246 |  virtual void DECLARE_VST_DEPRECATED (inputConnected) (VstInt32 index, bool state) {}       | ^~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:246:10: error: ‘DECLARE_VST_DEPRECATED’ declared as function returning a function   246 |  virtual void DECLARE_VST_DEPRECATED (inputConnected) (VstInt32 index, bool state) {}       |          ^~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:247:39: error: ‘outputConnected’ has not been declared   247 |  virtual void DECLARE_VST_DEPRECATED (outputConnected) (VstInt32 index, bool state) {}       |                                       ^~~~~~~~~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:247:57: error: ‘VstInt32’ has not been declared   247 |  virtual void DECLARE_VST_DEPRECATED (outputConnected) (VstInt32 index, bool state) {}       | ^~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:247:10: error: ‘DECLARE_VST_DEPRECATED’ declared as function returning a function   247 |  virtual void DECLARE_VST_DEPRECATED (outputConnected) (VstInt32 index, bool state) {}       |          ^~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:248:10: error: ‘VstInt32’ does not name a type   248 |  virtual VstInt32 DECLARE_VST_DEPRECATED (willProcessReplacing) ();       |          ^~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:249:39: error: ‘wantAsyncOperation’ has not been declared   249 |  virtual void DECLARE_VST_DEPRECATED (wantAsyncOperation) (bool state = true);       |                                       ^~~~~~~~~~~~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:249:71: error: default arguments are only permitted for function parameters [-fpermissive]   249 |  virtual void DECLARE_VST_DEPRECATED (wantAsyncOperation) (bool state = true); | ^ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:249:10: error: ‘DECLARE_VST_DEPRECATED’ declared as function returning a function   249 |  virtual void DECLARE_VST_DEPRECATED (wantAsyncOperation) (bool state = true);       |          ^~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:250:39: error: ‘hasExternalBuffer’ has not been declared   250 |  virtual void DECLARE_VST_DEPRECATED (hasExternalBuffer) (bool state = true);       |                                       ^~~~~~~~~~~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:250:70: error: default arguments are only permitted for function parameters [-fpermissive]   250 |  virtual void DECLARE_VST_DEPRECATED (hasExternalBuffer) (bool state = true); | ^ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:250:10: error: ‘DECLARE_VST_DEPRECATED’ declared as function returning a function   250 |  virtual void DECLARE_VST_DEPRECATED (hasExternalBuffer) (bool state = true);       |          ^~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:251:10: error: ‘VstInt32’ does not name a type   251 |  virtual VstInt32 DECLARE_VST_DEPRECATED (reportCurrentPosition) () { return 0; }       |          ^~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:252:2: error: ‘DECLARE_VST_DEPRECATED’ declared as a ‘virtual’ field   252 |  virtual float* DECLARE_VST_DEPRECATED (reportDestinationBuffer) () { return 0; }       |  ^~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:252:17: error: expected ‘;’ at end of member declaration   252 |  virtual float* DECLARE_VST_DEPRECATED (reportDestinationBuffer) () { return 0; }       |                 ^~~~~~~~~~~~~~~~~~~~~~       |                                       ; /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:252:67: error: ISO C++ forbids declaration of ‘reportDestinationBuffer’ with no type [-fpermissive]   252 |  virtual float* DECLARE_VST_DEPRECATED (reportDestinationBuffer) () { return 0; } | ^ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:253:39: error: ‘setOutputSamplerate’ has not been declared   253 |  virtual void DECLARE_VST_DEPRECATED (setOutputSamplerate) (float samplerate);       |                                       ^~~~~~~~~~~~~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:253:10: error: ‘DECLARE_VST_DEPRECATED’ declared as function returning a function   253 |  virtual void DECLARE_VST_DEPRECATED (setOutputSamplerate) (float samplerate);       |          ^~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:254:10: error: ‘VstSpeakerArrangement’ does not name a type   254 |  virtual VstSpeakerArrangement* DECLARE_VST_DEPRECATED (getInputSpeakerArrangement) ();       |          ^~~~~~~~~~~~~~~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:255:10: error: ‘VstSpeakerArrangement’ does not name a type   255 |  virtual VstSpeakerArrangement* DECLARE_VST_DEPRECATED (getOutputSpeakerArrangement) ();       |          ^~~~~~~~~~~~~~~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:256:2: error: ‘DECLARE_VST_DEPRECATED’ declared as a ‘virtual’ field   256 |  virtual void* DECLARE_VST_DEPRECATED (openWindow) (DECLARE_VST_DEPRECATED (VstWindow));       |  ^~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:256:16: error: expected ‘;’ at end of member declaration   256 |  virtual void DECLARE_VST_DEPRECATED (openWindow) (DECLARE_VST_DEPRECATED (VstWindow));       |                ^~~~~~~~~~~~~~~~~~~~~~       |                                      ; /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:256:50: error: redeclaration of ‘void AudioEffectX::DECLARE_VST_DEPRECATED’   256 |  virtual void* DECLARE_VST_DEPRECATED (openWindow) (DECLARE_VST_DEPRECATED (VstWindow));       |                                                  ^ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:252:17: note: previous declaration ‘float AudioEffectX::DECLARE_VST_DEPRECATED’   252 |  virtual float* DECLARE_VST_DEPRECATED (reportDestinationBuffer) () { return 0; }       |                 ^~~~~~~~~~~~~~~~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:256:53: error: ‘DECLARE_VST_DEPRECATED’ is not a type   256 |  virtual void* DECLARE_VST_DEPRECATED (openWindow) (DECLARE_VST_DEPRECATED (VstWindow));       | ^~~~~~~~~~~~~~~~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:256:87: error: expected ‘,’ or ‘...’ before ‘’ token   256 |  virtual void* DECLARE_VST_DEPRECATED (openWindow) (DECLARE_VST_DEPRECATED (VstWindow)); | ^ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:256:88: error: ISO C++ forbids declaration of ‘openWindow’ with no type [-fpermissive]   256 |  virtual void DECLARE_VST_DEPRECATED (openWindow) (DECLARE_VST_DEPRECATED (VstWindow)); | ^ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:257:39: error: ‘closeWindow’ has not been declared   257 |  virtual bool DECLARE_VST_DEPRECATED (closeWindow) (DECLARE_VST_DEPRECATED (VstWindow));       |                                       ^~~~~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:257:53: error: ‘DECLARE_VST_DEPRECATED’ is not a type   257 |  virtual bool DECLARE_VST_DEPRECATED (closeWindow) (DECLARE_VST_DEPRECATED (VstWindow));       | ^~~~~~~~~~~~~~~~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:257:87: error: expected ‘,’ or ‘...’ before ‘’ token   257 |  virtual bool DECLARE_VST_DEPRECATED (closeWindow) (DECLARE_VST_DEPRECATED (VstWindow)); | ^ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:257:10: error: ‘DECLARE_VST_DEPRECATED’ declared as function returning a function   257 |  virtual bool DECLARE_VST_DEPRECATED (closeWindow) (DECLARE_VST_DEPRECATED (VstWindow));       |          ^~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:258:39: error: ‘setBlockSizeAndSampleRate’ has not been declared   258 |  virtual void DECLARE_VST_DEPRECATED (setBlockSizeAndSampleRate) (VstInt32 _blockSize, float _sampleRate) { blockSize = _blockSize; sampleRate = _sampleRate; }       | ^~~~~~~~~~~~~~~~~~~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:258:67: error: ‘VstInt32’ has not been declared   258 |  virtual void DECLARE_VST_DEPRECATED (setBlockSizeAndSampleRate) (VstInt32 _blockSize, float _sampleRate) { blockSize = _blockSize; sampleRate = _sampleRate; } | ^~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:258:10: error: ‘DECLARE_VST_DEPRECATED’ declared as function returning a function   258 |  virtual void DECLARE_VST_DEPRECATED (setBlockSizeAndSampleRate) (VstInt32 _blockSize, float _sampleRate) { blockSize = _blockSize; sampleRate = _sampleRate; }       |          ^~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:259:39: error: ‘getErrorText’ has not been declared   259 |  virtual bool DECLARE_VST_DEPRECATED (getErrorText) (char* text) { return false; }       |                                       ^~~~~~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:259:10: error: ‘DECLARE_VST_DEPRECATED’ declared as function returning a function   259 |  virtual bool DECLARE_VST_DEPRECATED (getErrorText) (char* text) { return false; }       |          ^~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:260:2: error: ‘DECLARE_VST_DEPRECATED’ declared as a ‘virtual’ field   260 |  virtual void* DECLARE_VST_DEPRECATED (getIcon) () { return 0; }       |  ^~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:260:16: error: expected ‘;’ at end of member declaration   260 |  virtual void* DECLARE_VST_DEPRECATED (getIcon) () { return 0; }       |                ^~~~~~~~~~~~~~~~~~~~~~       |                                      ; /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:260:47: error: redeclaration of ‘void* AudioEffectX::DECLARE_VST_DEPRECATED’   260 |  virtual void* DECLARE_VST_DEPRECATED (getIcon) () { return 0; }       |                                               ^ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:252:17: note: previous declaration ‘float* AudioEffectX::DECLARE_VST_DEPRECATED’   252 |  virtual float* DECLARE_VST_DEPRECATED (reportDestinationBuffer) () { return 0; }       |                 ^~~~~~~~~~~~~~~~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:260:50: error: ISO C++ forbids declaration of ‘getIcon’ with no type [-fpermissive]   260 |  virtual void* DECLARE_VST_DEPRECATED (getIcon) () { return 0; }       |                                                  ^ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:261:39: error: ‘setViewPosition’ has not been declared   261 |  virtual bool DECLARE_VST_DEPRECATED (setViewPosition) (VstInt32 x, VstInt32 y) { return false; }       |                                       ^~~~~~~~~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:261:57: error: ‘VstInt32’ has not been declared   261 |  virtual bool DECLARE_VST_DEPRECATED (setViewPosition) (VstInt32 x, VstInt32 y) { return false; }       | ^~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:261:69: error: ‘VstInt32’ has not been declared   261 |  virtual bool DECLARE_VST_DEPRECATED (setViewPosition) (VstInt32 x, VstInt32 y) { return false; } | ^~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:261:10: error: ‘DECLARE_VST_DEPRECATED’ declared as function returning a function   261 |  virtual bool DECLARE_VST_DEPRECATED (setViewPosition) (VstInt32 x, VstInt32 y) { return false; }       |          ^~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:262:10: error: ‘VstInt32’ does not name a type   262 |  virtual VstInt32 DECLARE_VST_DEPRECATED (fxIdle) () { return 0; }       |          ^~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:263:39: error: ‘keysRequired’ has not been declared   263 |  virtual bool DECLARE_VST_DEPRECATED (keysRequired) () { return false; }       |                                       ^~~~~~~~~~~~ /home/debian/SDKs/vstsdk2.4/pluginterfaces/vst2.x/aeffectx.h:263:10: error: ‘DECLARE_VST_DEPRECATED’ declared as function returning a function   263 |  virtual bool DECLARE_VST_DEPRECATED (keysRequired) () { return false; }       |          ^~~~ audio/VST_plugins.cpp:1218:11: error: ‘AEffect’ does not name a type  1218 |   typedef AEffect* (VST_GetPluginInstance) (audioMasterCallback);       |           ^~~~~~~ audio/VST_plugins.cpp: In function ‘bool add_vst_plugin_type(QFileInfo, QString, bool, const char)’: audio/VST_plugins.cpp:1250:5: error: ‘VST_GetPluginInstance’ was not declared in this scope  1250 |     VST_GetPluginInstance get_plugin_instance = (VST_GetPluginInstance) myLib.resolve("VSTPluginMain");       |     ^~~~~~~~~~~~~~~~~~~~~ audio/VST_plugins.cpp:1251:9: error: ‘get_plugin_instance’ was not declared in this scope  1251 |     if (get_plugin_instance == NULL)       |         ^~~~~~~~~~~~~~~~~~~ audio/VST_plugins.cpp:1254:9: error: ‘get_plugin_instance’ was not declared in this scope  1254 |     if (get_plugin_instance == NULL){       |         ^~~~~~~~~~~~~~~~~~~ make: *** [Makefile:1962: /tmp/radium_objects/VST_plugins.o] Error 1 make: *** Waiting for unfinished jobs....

grammoboy2 avatar Apr 29 '20 22:04 grammoboy2

Seems that the VST folders is re-arranged (not that I have experience with VST) and that the filename is changed.

You're probably using the later versions which aren't compatible. Try this VST SDK version. Any later will not work as steinberg deprecated VST2 long ago. See https://github.com/kmatheussen/radium/issues/1163#issuecomment-453640783 for details.

I've been meaning to make a PR to automate downloading this but didn't get around to it yet. It can't be included in Radium repo or Steinberg will certainly sent a DCMA takedown request for this project.

Is it possible to build without VST?

Not really because the JUCE library Radium is using depends on VST2 headers and it does a lot more than just support VST2.

how to edit the build process so it finds the needed vst file?

You could use the patch from my PR #1247 or stick with the hardcoded ~/SDKs folder in the meantime.

Teteros avatar Apr 30 '20 05:04 Teteros

Is it possible to build without VST?

Not really because the old JUCE library Radium is using

Radium is actually the latest release of JUCE, from february this year. Is there any advantage using a development version of JUCE?

kmatheussen avatar Apr 30 '20 06:04 kmatheussen

Radium is actually the latest release of JUCE

I've edited message to correct that already, yes. Seems I got confused because re-reading JUCE's VST2 announcement I realized they just ment the headers aren't redistributed anymore in latest JUCE, not that VST2 support is dropped entirely.

Teteros avatar Apr 30 '20 07:04 Teteros

On Thu, Apr 30, 2020 at 9:03 AM Teteros [email protected] wrote:

Radium is actually the latest release of JUCE

I've edited message to correct that already, yes. Seems I got confused because re-reading JUCE's VST2 announcement I realized they just ment the headers aren't redistributed anymore in latest JUCE, not that VST2 support is dropped entirely.

Ah, sorry. In general it's probably better to send a new message for corrections, at least for important tings (not this one though). Can't go to github and recheck all old messages. :-)

It can't be included in Radium repo or steinberg will certainly sent a DCMA takedown request for this project.

I doubt that. Has they ever done that? They haven't done it before as far as I know. I would be surprised if they actually care.

kmatheussen avatar Apr 30 '20 07:04 kmatheussen

Definitely, they seem to be actively sending notices to any project including aeffectx.h (or other files from the VST2 SDK) in the repo.

GitHub's pretty transparent with this: https://github.com/github/dmca/search?q=steinberg

Even projects which use the non-steinberg implementation of the SDK seem to be hit with false positives on this: https://github.com/csound/csound/issues/989#issuecomment-410087802

It does seem they are more actively going for plugins rather than plugin hosts, but I don't think it's worth risking it really, even the download script might be streching it so I'm not sure whether it isn't best to just stay with manual download of the SDK for now just to be on the safe side.

Teteros avatar Apr 30 '20 07:04 Teteros

Thanks so far.

make very_clean fails

$ make very_clean cd pluginhost/Builds/Linux && make clean && rm -fr build make[1]: Entering directory '/home/debian/develop/radium/pluginhost/Builds/Linux' make[1]: -dumpversion: Command not found Cleaning MyPluginHost make[1]: Leaving directory '/home/debian/develop/radium/pluginhost/Builds/Linux' rm -f /tmp/radium_objects/.o .o /.o featurelist ~ /~ /~ //~ core bin/core /.pyc //.pyc api/radium_wrap.c api/wrapfunclist.c api/radium.i api/radium_proc.h api/s7_types_code.c api/s7_types_code_init.c api/s7_types.h bin/protos.conf bin/radium bin/radium_linux.bin python/core bin/X11_XSendEvent bin/X11_Qtstuff.py makescript.sh Qt/mQt_instruments_widget_callbacks.h Qt/Qt_midi_instrument_widget.h Qt/Qt_audio_instrument_widget.h Qt/mQt_sample_requester_widget_callbacks.h Qt/mQt_control_change_widget_callbacks.h Qt/mQt Qt/Qt_preferences.h Qt/Qt_vst_paths_widget.h mixergui/mQM* mixergui/images.cpp a.out common/keyboard_sub_ids.h common/visual_op_queue_proc.h w dependencies_ok buildtype.opt flagopts.opt bin/radium_crashreporter bin/radium_crashreporter.exe bin/radium_error_message bin/radium_progress_window bin/radium_progress_window.exe bin/radium_error_message.exe bin/radium.bin.exe bin/radium_check_jack_status bin/radium_check_jack_status.exe bin/radium_check_opengl bin/radium_check_opengl.exe bin/radium_plugin_scanner bin/radium_plugin_scanner.exe bin/radium_addr2line bin/radium_addr2line.exe linux_objs/* darwinx_objs/* mingw_objs/* ///Juce_plugins.o bin/s7webserver/moc_s7webserver.cpp audio/mfaustqt2.cpp bin/styles/ api/mapi_gui.cpp sndlib_built sndlib_objectfiles/* bin/packages/sndlib/*.o rm -fr /tmp/radium_bin /tmp/radium_objects rm -f audio/zita_rev.cpp audio/stk_flute.cpp audio/stk_bowed.cpp audio/stk_blow_bottle.cpp audio/stk_bass.cpp audio/stk_blow_hole.cpp audio/stk_brass.cpp audio/stk_clarinet.cpp audio/stk_flute_stk.cpp audio/stk_glass_harmonica.cpp audio/stk_harpsi.cpp audio/stk_modal_bar.cpp audio/stk_NLF_eks.cpp audio/stk_NLF_fm.cpp audio/stk_piano.cpp audio/stk_saxophony.cpp audio/stk_sitar.cpp audio/stk_tibetan_bowl.cpp audio/stk_tuned_bar.cpp audio/stk_uni_bar.cpp audio/stk_voice_form.cpp audio/faust_tapiir.cpp audio/faust_multibandcomp.cpp audio/faust_system_eq.cpp audio/faust_system_tremolo.cpp audio/faust_system_lowpass.cpp audio/faust_system_highpass.cpp audio/faust_system_lowshelf.cpp audio/faust_system_highshelf.cpp audio/system_compressor.cpp cd pluginhost/Builds/Linux && make clean && rm -fr build make[1]: Entering directory '/home/debian/develop/radium/pluginhost/Builds/Linux' make[1]: -dumpversion: Command not found Cleaning MyPluginHost make[1]: Leaving directory '/home/debian/develop/radium/pluginhost/Builds/Linux' cd bin/packages/sndlib && make clean && rm -f sndlib.a sndlib.so /bin/sh: 1: cd: can't cd to bin/packages/sndlib make: *** [Makefile:560: clean] Error 2

grammoboy2 avatar Apr 30 '20 08:04 grammoboy2

Do you have build-essential installed? It seems like you don't have gcc packages. We could go on a jitsi/discord/riot.im call if you'd like so we can screenshare and figure it out.

Teteros avatar Apr 30 '20 08:04 Teteros

On 4/30/20 10:57 AM, Teteros wrote:

Do you have |build-essential| installed?

||build-essential is already the newest version (12.8)

grammoboy2 avatar Apr 30 '20 09:04 grammoboy2

gcc -dumpversion command outputs anything for you?

Teteros avatar Apr 30 '20 09:04 Teteros

On 4/30/20 11:06 AM, Teteros wrote:

gcc -dumpversion

$ gcc -dumpversion 9

grammoboy2 avatar Apr 30 '20 09:04 grammoboy2

does doing export GCC=gcc then running the make help?

Teteros avatar Apr 30 '20 09:04 Teteros

You don't need to do make veryclean anyway by the way, this is only needed if you want to clean up existing compilation files.

This line failed: /bin/sh: 1: cd: can't cd to bin/packages/sndlib

because you have to run

 export RADIUM_QT_VERSION=5
 make packages

to download and make packages first

Teteros avatar Apr 30 '20 09:04 Teteros

Ok, just trying to build now. Thanks for your support.

grammoboy2 avatar Apr 30 '20 09:04 grammoboy2

sndlib isn't used anymore, so it's an actual bug causing "make clean" to always fail. But it doesn't matter if you've never run "make packages" before.

On Thu, Apr 30, 2020 at 11:23 AM grammoboy [email protected] wrote:

Ok, just trying to build now. Thanks for your support.

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/kmatheussen/radium/issues/1249#issuecomment-621718384, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAIX3JZ2OWBETVHGPLWHN2TRPE7PDANCNFSM4MQ6SROA .

kmatheussen avatar Apr 30 '20 09:04 kmatheussen

It did seems to build well. (but I've that old video driver problem, so I might build it on Ubuntu as well later)

What is this command doing and why do you need it?

QT_QPA_PLATFORM_PLUGIN_PATH=$(./find_moc_and_uic_paths.sh qmake) -query QT_INSTALL_PLUGINS bin/radium

grammoboy2 avatar Apr 30 '20 09:04 grammoboy2

It's to populate System Plugins store for Qt5 I believe.

Radium doesn't do this in run_radium.sh script I think because the find_moc_and_uic_paths.sh script is ran at build not runtime.

Teteros avatar Apr 30 '20 09:04 Teteros

Ok, and how do I install it system wide (I think that is needed for NSM)

grammoboy2 avatar Apr 30 '20 09:04 grammoboy2

What is this command doing and why do you need it?

It's caused by actions to prevent Qt plugins from being used in Radium. Qt plugins has caused all sorts of strange bugs and behaviors in the past.

To install system wide, do this:

./install.sh /opt
ln -s /opt/radium/run_radium.sh /usr/bin/radium

(this is somehow documented if you write "make install" and follow the clues)

On Thu, Apr 30, 2020 at 11:39 AM grammoboy [email protected] wrote:

Ok, and how do I install it system wide (I think that is needed for NSM)

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/kmatheussen/radium/issues/1249#issuecomment-621726114, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAIX3JZIEAQO34J6RWYJFVLRPFBMXANCNFSM4MQ6SROA .

kmatheussen avatar Apr 30 '20 09:04 kmatheussen

Also remember to also build radium itself, not just packages:

RADIUM_QT_VERSION=5 BUILDTYPE=RELEASE ./build_linux.sh -j $(nproc)

after you ran "make packages".

how do I install it system wide

sudo -E ./install.sh /opt

if you want it in /opt directory (this is very common path for self-contained packages on most distros)

to make the binary you can do

sudo echo QT_QPA_PLATFORM_PLUGIN_PATH="$($(RADIUM_QT_VERSION=5 ./find_moc_and_uic_paths.sh qmake) -query QT_INSTALL_PLUGINS)" /opt/radium/radium >> /usr/local/bin/radium
sudo chmod +x /usr/local/bin/radium

(you can replace /usr/local/bin with another path of course)

if you want the desktop and mimefiles (so radium shows up in your app launcher and can run .rad files from double click in file manager) do

sudo mkdir -p "/usr/share/icons/hicolor/"{16x16,32x32,128x128,256x256}"/apps" "/usr/share/applications" "/usr/share/mime/packages"
sudo ln -s "/opt/radium/radium_16x16x8.png" "/usr/share/icons/hicolor/16x16/apps/radium.png"
sudo ln -s "/opt/radium/radium_32x32x24.png" "/usr/share/icons/hicolor/32x32/apps/radium.png"
sudo ln -s "/opt/radium/radium_128x128x32.png" "/usr/share/icons/hicolor/128x128/apps/radium.png"
sudo ln -s "/opt/radium/radium_256x256x32.png" "/usr/share/icons/hicolor/256x256/apps/radium.png"
sudo ln -s "/opt/radium/radium.desktop" "/usr/share/applications/radium.desktop"
sudo ln -s "/opt/radium/radium-mimetype.xml" "/usr/share/mime/packages/radium.xml"

I lifted all of this from the AUR package, it might be different for debian.

Teteros avatar Apr 30 '20 09:04 Teteros

I think that is needed for NSM

Not really, you just need to have the radium executable in your PATH environment variable somewhere if you only specify "radium" as the client name in NSM.

If you pass the full path to the running radium wrapper script as client executable in NSM you don't need global install really.

@kmatheussen really offtopic, but is name dropping Arch in crashreporter.cpp still needed?

"Linux users: Please don't report bugs caused by a non-properly compiled, or old, version of Radium (usually distributed by Arch linux)."

I think the AUR package is fully following all instructions from this repo and can be a reference for other packagers on how to package radium nowdays ;-)

The source package only exists because I wanted Pd/FAUST instruments myself at the time and binary package doesn't have them, otherwise I'd have made radium-bin package.

Teteros avatar Apr 30 '20 10:04 Teteros

I agree. Removed namedropping. By the way, binary packages have both faust and pd now, at least interpreting faust.

On Thu, Apr 30, 2020 at 12:05 PM Teteros [email protected] wrote:

I think that is needed for NSM

Not really, you just need to have the radium executable in your PATH environment variable somewhere if you only specify "radium" as the client name in NSM.

If you pass the full path to the running radium wrapper script as client executable in NSM you don't need global install really.

@kmatheussen https://github.com/kmatheussen really offtopic, but is name dropping Arch in crashreporter.cpp still needed?

"Linux users: Please don't report bugs caused by a non-properly compiled, or old, version of Radium (usually distributed by Arch linux)."

I think the AUR package is fully following all instructions from this repo and can be a reference for other packagers on how to package radium nowdays ;-)

The source package only exists because I wanted Pd/FAUST instruments myself at the time and binary package doesn't have them, otherwise I'd have made radium-bin package.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/kmatheussen/radium/issues/1249#issuecomment-621738146, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAIX3J7XKMTRDBJJMEB4YHTRPFEOFANCNFSM4MQ6SROA .

kmatheussen avatar Apr 30 '20 10:04 kmatheussen

On Thu, Apr 30, 2020 at 11:44 AM Kjetil Matheussen [email protected] wrote:

What is this command doing and why do you need it?

It's caused by actions to prevent Qt plugins from being used in Radium. Qt plugins has caused all sorts of strange bugs and behaviors in the past.

To install system wide, do this:

./install.sh /opt
ln -s /opt/radium/run_radium.sh /usr/bin/radium

(this is somehow documented if you write "make install" and follow the clues)

Ouch, buggy instructions. QT_QPA_PLUGINS is need in the startup script. I've changed the documentation to this now (thanks Teteros):

BUILDTYPE=RELEASE RADIUM_QT_VERSION=5 make packages BUILDTYPE=RELEASE RADIUM_QT_VERSION=5 ./build_linux.sh -j nproc ./install.sh /opt TARGET=/usr/bin/radium echo "#/bin/bash" > $TARGET echo "QT_QPA_PLATFORM_PLUGIN_PATH="$($(RADIUM_QT_VERSION=5 ./find_moc_and_uic_paths.sh qmake) -query QT_INSTALL_PLUGINS)" /opt/radium/radium $@" >> $TARGET chmod +x $TARGET

kmatheussen avatar Apr 30 '20 10:04 kmatheussen

binary packages have both faust and pd now, at least interpreting faust.

Does that mean LLVM is not linked dynamically anymore in binary builds?

This was the issue last time I looked into it. Linking LLVM statically (meaning users most likely have to build LLVM themselves as distros may not ship static libs) or not building FAUST instruments at all was needed to have a portable radium linux binary.

It could also be because you've updated to a FAUST recently to git master which supports LLVM3 up to latest LLVM10 iirc, so this isn't a problem anymore.

startup script.

Nitpicking but #!/bin/env bash is slightly more portable than #/bin/bash, (I've worked on distros that don't have /bin/bash before (nixos, guix etc)

and yes QT_QPA_PLATFORM_PLUGIN_PATH is not the same as QT_PLUGIN_PATH, the latter can be unset safely in the run_radium_linux.sh script while the former needs to be generated from build dir to have the right path to qmake binary, you weren't passing the parameters before, should have probably brought it up oops.

Overall I think the only build issue I've heard about lately (at least from Arch users) is https://github.com/kmatheussen/radium/issues/1235, libpd-master package is just failing without gcc errors on some machines and I can't figure out why. It's something in this dated fork because upstream libpd worked on affected machine. It might be needed to rebase your patches on top of upstream to fix it completely.

I think the hardcoded libpd stuff can be made into a variable in Makefile.Qt and user could pass RADIUM_BUILD_PD=0 to skip it. I can submit a PR for that if you'd like?

Teteros avatar Apr 30 '20 11:04 Teteros

On Thu, Apr 30, 2020 at 1:07 PM Teteros [email protected] wrote:

binary packages have both faust and pd now, at least interpreting faust.

Does that mean LLVM is not linked dynamically anymore in binary builds?

This was the issue last time I looked into it. Linking LLVM statically linking (meaning users most likely have to build LLVM themselves as distros may not ship static libs) or not building FAUST instruments at all was needed to have a portable radium linux binary.

It could also be because you've updated to a FAUST recently to git master which supports LLVM3 up to latest LLVM10 iirc, so this isn't a problem anymore.

I think the problem was worse than that. Whether LLVM was linked statically or dynamically Radium would simply not start on Ubuntu. Probably an ABI incompatibility. That's the reason I didn't include the Faust instrument.

However, the interpreter backend in Fraust doesn't require LLVM, so the linux binaries have the Faust interpreter backend included now. Unfortunately the Faust interpreter backend is somewhere between 50-90% slower than the LLVM backend, but on the good side it is much faster to compile, so the development experience is somewhat better since you see the changes more immediately.

startup script.

Nitpicking but #!/bin/env bash is slightly more portable than #/bin/bash, (I've worked on distros that don't have /bin/bash before (nixos, guix etc)

Thanks, will fix.

and yes QT_QPA_PLATFORM_PLUGIN_PATH is not the same as QT_PLUGIN_PATH, the latter can be unset safely in the run_radium_linux.sh script while the former needs to be generated from build dir to have the right path to qmake binary, you weren't passing the parameters before, should have probably brought it up oops.

Overall I think the only build issue I've heard about lately (at least from Arch users) is #1235, libpd-master package is just failing without gcc errors on some machines and I can't figure out why. It's something in this dated fork because upstream libpd worked on affected machine. It might be needed to rebase your patches on top of upstream to fix it completely.

I think the hardcoded libpd stuff can be made into a variable in Makefile.Qt and user could pass RADIUM_BUILD_PD=0 to skip it. I can submit a PR for that if you'd like?

Yes, thank you.

kmatheussen avatar May 01 '20 10:05 kmatheussen