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 _______________________________________________ Linux-audio-dev mailing list [email protected] http://lists.linuxaudio.org/mailman/listinfo/linux-audio-dev
