Problem compiling with AAX
-
@VHO you entirely correct, silly me for missing them over on the right side of the page..
so I downloaded V2.3.1 (the same as @orange) and compiled it - I got a .lib file fine, then I went into HISE and tried to compile a plug-in now I get these errors:
AAXLibrary_x64.lib(AAX_CEffectParameters.obj) : error LNK2038: mismatch detecte d for 'RuntimeLibrary': value 'MD_DynamicRelease' doesn't match value 'MT_Stati cRelease' in include_juce_audio_plugin_client_AAX.obj [D:\Audio\ChannelRobot\AA HISE Work\Shapiro\Binaries\Builds\VisualStudio2017\Shapiro_AAX.vcxproj] AAXLibrary_x64.lib(AAX_Init.obj) : error LNK2038: mismatch detected for 'Runtim eLibrary': value 'MD_DynamicRelease' doesn't match value 'MT_StaticRelease' in include_juce_audio_plugin_client_AAX.obj [D:\Audio\ChannelRobot\AA HISE Work\Sh apiro\Binaries\Builds\VisualStudio2017\Shapiro_AAX.vcxproj] AAXLibrary_x64.lib(AAX_CParameter.obj) : error LNK2038: mismatch detected for ' RuntimeLibrary': value 'MD_DynamicRelease' doesn't match value 'MT_StaticReleas e' in include_juce_audio_plugin_client_AAX.obj [D:\Audio\ChannelRobot\AA HISE W ork\Shapiro\Binaries\Builds\VisualStudio2017\Shapiro_AAX.vcxproj] AAXLibrary_x64.lib(AAX_IEffectGUI.obj) : error LNK2038: mismatch detected for ' RuntimeLibrary': value 'MD_DynamicRelease' doesn't match value 'MT_StaticReleas e' in include_juce_audio_plugin_client_AAX.obj [D:\Audio\ChannelRobot\AA HISE W ork\Shapiro\Binaries\Builds\VisualStudio2017\Shapiro_AAX.vcxproj] AAXLibrary_x64.lib(AAX_IEffectParameters.obj) : error LNK2038: mismatch detecte d for 'RuntimeLibrary': value 'MD_DynamicRelease' doesn't match value 'MT_Stati cRelease' in include_juce_audio_plugin_client_AAX.obj [D:\Audio\ChannelRobot\AA HISE Work\Shapiro\Binaries\Builds\VisualStudio2017\Shapiro_AAX.vcxproj] AAXLibrary_x64.lib(AAX_CACFUnknown.obj) : error LNK2038: mismatch detected for 'RuntimeLibrary': value 'MD_DynamicRelease' doesn't match value 'MT_StaticRelea se' in include_juce_audio_plugin_client_AAX.obj [D:\Audio\ChannelRobot\AA HISE Work\Shapiro\Binaries\Builds\VisualStudio2017\Shapiro_AAX.vcxproj] AAXLibrary_x64.lib(AAX_CEffectGUI.obj) : error LNK2038: mismatch detected for ' RuntimeLibrary': value 'MD_DynamicRelease' doesn't match value 'MT_StaticReleas e' in include_juce_audio_plugin_client_AAX.obj [D:\Audio\ChannelRobot\AA HISE W ork\Shapiro\Binaries\Builds\VisualStudio2017\Shapiro_AAX.vcxproj] AAXLibrary_x64.lib(AAX_CParameterManager.obj) : error LNK2038: mismatch detecte d for 'RuntimeLibrary': value 'MD_DynamicRelease' doesn't match value 'MT_Stati cRelease' in include_juce_audio_plugin_client_AAX.obj [D:\Audio\ChannelRobot\AA HISE Work\Shapiro\Binaries\Builds\VisualStudio2017\Shapiro_AAX.vcxproj] AAXLibrary_x64.lib(AAX_CPacketDispatcher.obj) : error LNK2038: mismatch detecte d for 'RuntimeLibrary': value 'MD_DynamicRelease' doesn't match value 'MT_Stati cRelease' in include_juce_audio_plugin_client_AAX.obj [D:\Audio\ChannelRobot\AA HISE Work\Shapiro\Binaries\Builds\VisualStudio2017\Shapiro_AAX.vcxproj] AAXLibrary_x64.lib(AAX_CString.obj) : error LNK2038: mismatch detected for 'Run timeLibrary': value 'MD_DynamicRelease' doesn't match value 'MT_StaticRelease' in include_juce_audio_plugin_client_AAX.obj [D:\Audio\ChannelRobot\AA HISE Work \Shapiro\Binaries\Builds\VisualStudio2017\Shapiro_AAX.vcxproj] AAXLibrary_x64.lib(AAX_CChunkDataParser.obj) : error LNK2038: mismatch detected for 'RuntimeLibrary': value 'MD_DynamicRelease' doesn't match value 'MT_Static Release' in include_juce_audio_plugin_client_AAX.obj [D:\Audio\ChannelRobot\AA HISE Work\Shapiro\Binaries\Builds\VisualStudio2017\Shapiro_AAX.vcxproj] AAXLibrary_x64.lib(AAX_VController.obj) : error LNK2038: mismatch detected for 'RuntimeLibrary': value 'MD_DynamicRelease' doesn't match value 'MT_StaticRelea se' in include_juce_audio_plugin_client_AAX.obj [D:\Audio\ChannelRobot\AA HISE Work\Shapiro\Binaries\Builds\VisualStudio2017\Shapiro_AAX.vcxproj] AAXLibrary_x64.lib(AAX_VCollection.obj) : error LNK2038: mismatch detected for 'RuntimeLibrary': value 'MD_DynamicRelease' doesn't match value 'MT_StaticRelea se' in include_juce_audio_plugin_client_AAX.obj [D:\Audio\ChannelRobot\AA HISE Work\Shapiro\Binaries\Builds\VisualStudio2017\Shapiro_AAX.vcxproj] AAXLibrary_x64.lib(AAX_VPropertyMap.obj) : error LNK2038: mismatch detected for 'RuntimeLibrary': value 'MD_DynamicRelease' doesn't match value 'MT_StaticRele ase' in include_juce_audio_plugin_client_AAX.obj [D:\Audio\ChannelRobot\AA HISE Work\Shapiro\Binaries\Builds\VisualStudio2017\Shapiro_AAX.vcxproj] AAXLibrary_x64.lib(AAX_VDescriptionHost.obj) : error LNK2038: mismatch detected for 'RuntimeLibrary': value 'MD_DynamicRelease' doesn't match value 'MT_Static Release' in include_juce_audio_plugin_client_AAX.obj [D:\Audio\ChannelRobot\AA HISE Work\Shapiro\Binaries\Builds\VisualStudio2017\Shapiro_AAX.vcxproj] AAXLibrary_x64.lib(AAX_VEffectDescriptor.obj) : error LNK2038: mismatch detecte d for 'RuntimeLibrary': value 'MD_DynamicRelease' doesn't match value 'MT_Stati cRelease' in include_juce_audio_plugin_client_AAX.obj [D:\Audio\ChannelRobot\AA HISE Work\Shapiro\Binaries\Builds\VisualStudio2017\Shapiro_AAX.vcxproj] AAXLibrary_x64.lib(AAX_VComponentDescriptor.obj) : error LNK2038: mismatch dete cted for 'RuntimeLibrary': value 'MD_DynamicRelease' doesn't match value 'MT_St aticRelease' in include_juce_audio_plugin_client_AAX.obj [D:\Audio\ChannelRobot \AA HISE Work\Shapiro\Binaries\Builds\VisualStudio2017\Shapiro_AAX.vcxproj] AAXLibrary_x64.lib(AAX_VFeatureInfo.obj) : error LNK2038: mismatch detected for 'RuntimeLibrary': value 'MD_DynamicRelease' doesn't match value 'MT_StaticRele ase' in include_juce_audio_plugin_client_AAX.obj [D:\Audio\ChannelRobot\AA HISE Work\Shapiro\Binaries\Builds\VisualStudio2017\Shapiro_AAX.vcxproj] Creating library .\..\..\Compiled\AAX\Shapiro x64.lib and object .\..\..\C ompiled\AAX\Shapiro x64.exp LINK : warning LNK4098: defaultlib 'MSVCRT' conflicts with use of other libs; u se /NODEFAULTLIB:library [D:\Audio\ChannelRobot\AA HISE Work\Shapiro\Binaries\B uilds\VisualStudio2017\Shapiro_AAX.vcxproj] .\..\..\Compiled\AAX\\Shapiro x64.aaxdll : fatal error LNK1319: 18 mismatches d etected [D:\Audio\ChannelRobot\AA HISE Work\Shapiro\Binaries\Builds\VisualStudi o2017\Shapiro_AAX.vcxproj]
-- which seem to be 18 of these:
value 'MD_DynamicRelease' doesn't match value 'MT_StaticRele
ase' -
@Lindon yeah, this is the exact same problem I had in another post. Here's the soloution:
This error can occur when you are statically linking your project with a library (typically a file with .lib extension) but the linker setting in your Visual Studio project are set to dynamically link (meaning the link will occur during runtime, usually with a .dll file). To define that you need the project to use static linking start Visual Studio. In the Solution Explorer pane, right click the project name, and select Properties. Expand the properties as shown in the figure below: C/C++ --> Code Generation --> Runtime Library, select the Multi-threaded (/MT) option from the dropdown menu.
-
@dustbro thanks Dan, to be clear I need to do this when I'm compiling the AAX plugin?
-
@Lindon correct. You'll need to open the AAX solution in visual studio to make this change I believe. It's been a few minutes since I've compiled AAX
-
@dustbro -- hey success! Thanks mate, I owe you one.
Now on to the xcode implementation......
-
@Lindon cool you've done it!
I just did on macOS yesterday and it works with no complication... Except that I didn't know the folder should be renamed "AAX", not "AAX SDK"... -
@ustk great, so just rename the folder AAX and select the xcode project - load it - build it and its done yes?
-
@Lindon That worked for me ;)
-
@Lindon yay!!!!!
-
I'm just exploring AAX now. Do I understand correctly that you get the SDK for evaluation purposes only and you have to ask AVID for approval before you're allowed to release anything commercially?
They want a decent amount of info! I don't think I'd be approved given that I license everything under GNU GPL.
Your name, title and contact information
Executive summary, including brief commentary on expected mutual benefits offered by the Alliance Partner program
Schedule of proposed products for inclusion with retail pricing
Weblinks to corporate web site and related products
Overview of past experience with Avid customer base
Description of prior collaborations with Avid and participation in developer programs, where applicable
Narrative on market size and revenue potential for solutions proposed for program
Overview of your testing and customer support capabilities
Any additional data you wish to add, or questions you have for the Alliance Partner Team -
@d-healey its WAAAAY more complicated than that.
You have to sign up to Avid - yes you have to tell them everything they want.
You have to become an approved developer, then you can use the SDK to build AAX plug-ins, BUT...
they wont load in the commercial release of Pro-tools, you will need to digitally sign them (on each platform, and then get teem licensed thru PACE - you will need an iLok and you will need to sign up with them and it will take time .. are you sure you want to do this?
-
@Lindon I have no desire to do any of that :p I have an iLok already, it's about 10 years old though so I don't know if that would be usable any more. I've had two customers who have bought my products only to discover they can't load them in pro-tools. So if I can supply AAX I'd like to. I can't find any information though on if I can license my plugin as GPL. I don't think I can technically for VST2 either for that matter...
-
All these questions? seriously? just all that I hate from a company... Love Pro Tools though, but avid...
-
@Lindon said in Problem compiling with AAX:
You have to become an approved developer, then you can use the SDK to build AAX plug-ins
I had questioned this directly to AVID and they directed me to some FAQ in their forum. From what I read, this is only necessary if you want to sell your product in the AVID Marketplace. I couldn't find any documentation saying otherwise to the commercial sales of your product.
do you have a link to share? -
@dustbro said in Problem compiling with AAX:
@Lindon said in Problem compiling with AAX:
You have to become an approved developer, then you can use the SDK to build AAX plug-ins
I had questioned this directly to AVID and they directed me to some FAQ in their forum. From what I read, this is only necessary if you want to sell your product in the AVID Marketplace. I couldn't find any documentation saying otherwise to the commercial sales of your product.
do you have a link to share?For creating AAX plugins, you must be approved developer by Avid. And also they will give you a PACE license (which costs $500 annually) free and you can sign your plugins. The Avid don't want to see any un-approved developers and AAX plugins from un-approved developers. Also nobody can publish your plugins, because every plugin will have unique wrapped GUID. (Dİgitally signing plugins is different from iLok license protection)
For Avid Marketplace, afaik (1 year ago) you must pass the developer exams :) I am not kidding. When you pass the developer knowledge level exams, then you can be a partner of the Avid Marketplace. (This is not required for building and selling AAX plugins in your store)
-
@orange said in Problem compiling with AAX:
@dustbro said in Problem compiling with AAX:
@Lindon said in Problem compiling with AAX:
You have to become an approved developer, then you can use the SDK to build AAX plug-ins
I had questioned this directly to AVID and they directed me to some FAQ in their forum. From what I read, this is only necessary if you want to sell your product in the AVID Marketplace. I couldn't find any documentation saying otherwise to the commercial sales of your product.
do you have a link to share?For creating AAX plugins, you must be approved developer by Avid. And also they will give you a PACE license (which costs $500 annually) free and you can sign your plugins. The Avid don't want to see any un-approved developers and AAX plugins from un-approved developers. Also nobody can publish your plugins, because every plugin will have unique wrapped GUID. (Dİgitally signing plugins is different from iLok license protection)
For Avid Marketplace, afaik (1 year ago) you must pass the developer exams :) I am not kidding. When you pass the developer knowledge level exams, then you can be a partner of the Avid Marketplace. (This is not required for building and selling AAX plugins in your store)
That's what I read too. So that part about guid would prevent me creating AAX plugins under a free license.
-
@d-healey said in Problem compiling with AAX:
@orange said in Problem compiling with AAX:
@dustbro said in Problem compiling with AAX:
@Lindon said in Problem compiling with AAX:
You have to become an approved developer, then you can use the SDK to build AAX plug-ins
I had questioned this directly to AVID and they directed me to some FAQ in their forum. From what I read, this is only necessary if you want to sell your product in the AVID Marketplace. I couldn't find any documentation saying otherwise to the commercial sales of your product.
do you have a link to share?For creating AAX plugins, you must be approved developer by Avid. And also they will give you a PACE license (which costs $500 annually) free and you can sign your plugins. The Avid don't want to see any un-approved developers and AAX plugins from un-approved developers. Also nobody can publish your plugins, because every plugin will have unique wrapped GUID. (Dİgitally signing plugins is different from iLok license protection)
For Avid Marketplace, afaik (1 year ago) you must pass the developer exams :) I am not kidding. When you pass the developer knowledge level exams, then you can be a partner of the Avid Marketplace. (This is not required for building and selling AAX plugins in your store)
That's what I read too. So that part about guid would prevent me creating AAX plugins under a free license.
You can talk this with Avid. And also the number of Pro Tools users are considerably much for a developer ;) You should think AAX ;)
-
@orange said in Problem compiling with AAX:
For creating AAX plugins, you must be approved developer by Avid. And also they will give you a PACE license (which costs $500 annually) free and you can sign your plugins. The Avid don't want to see any un-approved developers and AAX plugins from un-approved developers.
I already have that, so I guess I'm good to go? Maybe @Christoph-Hart has some insite ?
-
Yes, that's basically it. PACE doesn't cost anything to code sign AAX plugins (but you don't get iLok protection). Just signup on Avid, download the SDK, get in touch with PACE for the Eden Tools stuff, buy an iLok, and you're set.
Procedure was much more tedious in the past, now it got better. It's still bad, but once you've set it up it works.
EDIT: I wouldn't know whether a pure GPL plugin can be published on AAX since you're basically required to publish anything that was needed to build the product under the GPL license and I am sure that Avid wouldn't like that for their precious AAX thingie :)
-
I'll send Avid an email and report back.