[LAD] VST SDK2.4 issue

Dave Phillips dlphillips at woh.rr.com
Thu Aug 27 16:22:17 UTC 2009


Rui Nuno Capela wrote:
> On Thu, August 27, 2009 15:58, Victor Lazzarini wrote:
>   
>> Hi everyone,
>>
>>
>> perhaps one of you might have already seen this issue and will know what
>> is the best solution.
>>
>> My problem is that one of the headers in the VST SDK2.4, aeffect.h,
>> has a macro, VSTCALLBACK, which in gcc will be defined as __cdecl . This is
>> not recognised by the compiler, thus preventing me from using that header
>> (to build a plugin).
>>
>>
>> My solution was to forcibly undefine __GNUC__ so that the macro
>> gets a blank definition.
>>
>> However, I am not sure this is the best way out; I am wondering whether
>> the calling convention will break the plugin, since the host might be
>> expecting __cdecl and it will not be getting it.
>>
>> Perhaps someone else would have a different solution.
>>
>>     
>
> on my qtractor stuff, i do something like this,
>
>
> #if !defined(__WIN32__) && !defined(_WIN32) && !defined(WIN32)
> #define __cdecl
> #endif
>
> #include <aeffectx.h>
>
> #if !defined(VST_2_3_EXTENSIONS)
> #define VSTCALLBACK
> #endif
>
>
> it seems to get it just fine :)
>   

I recently built the pizmidi plugins as native Linux VSTs. The developer 
simply describes how to remove __cdecl from the definition, like Rui's 
solution but without the added #ifdef. Works for the pizmidi plugs.

Best,

dp




More information about the Linux-audio-dev mailing list