AAX 2.6 SDK
-
Severity Code Description Project File Line Suppression State
Error C2051 case expression not constant AAX Test_AAX C:\Users\Dan\Documents\GitHub\HISE\JUCE\modules\juce_audio_plugin_client\AAX\juce_AAX_Wrapper.cpp 314
Error (active) E0020 identifier "AAX_eStemFormat_Reserved_1" is undefined AAX Test_AAX C:\Users\Dan\Documents\GitHub\HISE\JUCE\modules\juce_audio_plugin_client\AAX\juce_AAX_Wrapper.cpp 312
Error (active) E0020 identifier "AAX_eStemFormat_Reserved_2" is undefined AAX Test_AAX C:\Users\Dan\Documents\GitHub\HISE\JUCE\modules\juce_audio_plugin_client\AAX\juce_AAX_Wrapper.cpp 313
Error (active) E0020 identifier "AAX_eStemFormat_Reserved_3" is undefined AAX Test_AAX C:\Users\Dan\Documents\GitHub\HISE\JUCE\modules\juce_audio_plugin_client\AAX\juce_AAX_Wrapper.cpp 314
Error (active) E0020 identifier "JucePlugin_AAXManufacturerCode" is undefined AAX Test_AAX C:\Users\Dan\Documents\GitHub\HISE\JUCE\modules\juce_audio_plugin_client\AAX\juce_AAX_Wrapper.cpp 2241
Error (active) E0020 identifier "JucePlugin_AAXProductId" is undefined AAX Test_AAX C:\Users\Dan\Documents\GitHub\HISE\JUCE\modules\juce_audio_plugin_client\AAX\juce_AAX_Wrapper.cpp 2242
Error (active) E0020 identifier "JucePlugin_Name" is undefined AAX Test_AAX C:\Users\Dan\Documents\GitHub\HISE\JUCE\modules\juce_audio_plugin_client\AAX\juce_AAX_Wrapper.cpp 2362
Error (active) E0020 identifier "JucePlugin_AAXCategory" is undefined AAX Test_AAX C:\Users\Dan\Documents\GitHub\HISE\JUCE\modules\juce_audio_plugin_client\AAX\juce_AAX_Wrapper.cpp 2369
Error (active) E0020 identifier "JucePlugin_Manufacturer" is undefined AAX Test_AAX C:\Users\Dan\Documents\GitHub\HISE\JUCE\modules\juce_audio_plugin_client\AAX\juce_AAX_Wrapper.cpp 2451
Error (active) E0020 identifier "JucePlugin_Desc" is undefined AAX Test_AAX C:\Users\Dan\Documents\GitHub\HISE\JUCE\modules\juce_audio_plugin_client\AAX\juce_AAX_Wrapper.cpp 2452
Error (active) E0020 identifier "JucePlugin_Name" is undefined AAX Test_AAX C:\Users\Dan\Documents\GitHub\HISE\JUCE\modules\juce_audio_plugin_client\AAX\juce_AAX_Wrapper.cpp 2453
Error (active) E0020 identifier "JucePlugin_VersionCode" is undefined AAX Test_AAX C:\Users\Dan\Documents\GitHub\HISE\JUCE\modules\juce_audio_plugin_client\AAX\juce_AAX_Wrapper.cpp 2454
Error (active) E0035 #error directive: "You need to define the JucePlugin_IsSynth value!" AAX Test_AAX C:\Users\Dan\Documents\GitHub\HISE\JUCE\modules\juce_audio_plugin_client\utility\juce_CheckSettingMacros.h 43
Error (active) E0035 #error directive: "You need to define the JucePlugin_ManufacturerCode value!" AAX Test_AAX C:\Users\Dan\Documents\GitHub\HISE\JUCE\modules\juce_audio_plugin_client\utility\juce_CheckSettingMacros.h 47
Error (active) E0035 #error directive: "You need to define the JucePlugin_PluginCode value!" AAX Test_AAX C:\Users\Dan\Documents\GitHub\HISE\JUCE\modules\juce_audio_plugin_client\utility\juce_CheckSettingMacros.h 51
Error (active) E0035 #error directive: "You need to define the JucePlugin_ProducesMidiOutput value!" AAX Test_AAX C:\Users\Dan\Documents\GitHub\HISE\JUCE\modules\juce_audio_plugin_client\utility\juce_CheckSettingMacros.h 55
Error (active) E0035 #error directive: "You need to define the JucePlugin_WantsMidiInput value!" AAX Test_AAX C:\Users\Dan\Documents\GitHub\HISE\JUCE\modules\juce_audio_plugin_client\utility\juce_CheckSettingMacros.h 59
Error (active) E0035 #error directive: "You need to define the JucePlugin_EditorRequiresKeyboardFocus value!" AAX Test_AAX C:\Users\Dan\Documents\GitHub\HISE\JUCE\modules\juce_audio_plugin_client\utility\juce_CheckSettingMacros.h 67
Error (active) E0035 #error directive: "You need to define the JucePlugin_AAXIdentifier value!" AAX Test_AAX C:\Users\Dan\Documents\GitHub\HISE\JUCE\modules\juce_audio_plugin_client\utility\juce_CheckSettingMacros.h 87
Error (active) E0035 #error directive: "No global header file was included!" AAX Test_AAX C:\Users\Dan\Documents\GitHub\HISE\JUCE\modules\juce_core\system\juce_TargetPlatform.h 56
Warning C4005 'TRACE_DISPATCH_CALLBACK': macro redefinition (compiling source file ....\JuceLibraryCode\include_hi_tools.cpp) AAX Test_SharedCode C:\Users\Dan\Documents\GitHub\HISE\hi_tools\hi_dispatch\03_library\Processor.cpp 65
Error C2065 'AAX_eStemFormat_Reserved_1': undeclared identifier AAX Test_AAX C:\Users\Dan\Documents\GitHub\HISE\JUCE\modules\juce_audio_plugin_client\AAX\juce_AAX_Wrapper.cpp 312
Error C2065 'AAX_eStemFormat_Reserved_2': undeclared identifier AAX Test_AAX C:\Users\Dan\Documents\GitHub\HISE\JUCE\modules\juce_audio_plugin_client\AAX\juce_AAX_Wrapper.cpp 313
Error C2065 'AAX_eStemFormat_Reserved_3': undeclared identifier AAX Test_AAX C:\Users\Dan\Documents\GitHub\HISE\JUCE\modules\juce_audio_plugin_client\AAX\juce_AAX_Wrapper.cpp 314
Error C2051 case expression not constant AAX Test_AAX C:\Users\Dan\Documents\GitHub\HISE\JUCE\modules\juce_audio_plugin_client\AAX\juce_AAX_Wrapper.cpp 312
Error C2051 case expression not constant AAX Test_AAX C:\Users\Dan\Documents\GitHub\HISE\JUCE\modules\juce_audio_plugin_client\AAX\juce_AAX_Wrapper.cpp 313 -
@Dan-Korneff Should be fixed now - at least the AAX specific ones, but it seems that you're running into that global header issue too.
Try deleting the entire build directory and rebuild all DSP networks.
-
@Christoph-Hart Thanks!!!
This project has no DSP. I just make a fresh session and added a slider. -
AAX 2.6 SDK confirmed working here. Thanks!!
-
@Christoph-Hart I've compiled without an issue on MacOS, but get this error on PC:
LINK : fatal error C1047: The object or library file 'Z:\GitHub\HISE\tools\SDK\AAX\Libs\Release\AAXLibrary_x64.lib' was created by a different version of the compiler than other objects like 'x64\Release\AAX\\include_juce_audio_plugin_client_AAX.obj'; rebuild all objects and libraries with the same compiler [Z:\Korneff Audio\Test Export\VST\Test Export\Binaries\Builds\VisualStudio2022\Test Export_AAX.vcxproj] LINK : fatal error LNK1257: code generation failed [Z:\Korneff Audio\Test Export\VST\Test Export\Binaries\Builds\VisualStudio2022\Test Export_AAX.vcxproj]
I've tried compiling the SDK with VS 2017 and 2022. Same result.
-
Trashed everything. Rebuilt everything. Back to normal.
-
@Dan-Korneff The update has allowed me to now build AAXs on Mac, but I am still struggling to build on Windows. I am getting a wall of LNK2038 errors. Do you have any suggestions for building the 2.6 SDK to ensure that it is compatible with HISE? Do I need to build the SDK with vs2017? Do I also need to also build HISE with vs2017?
-
@obolig If you google Linker error 2038, you'll quickly see that it's about a mismatch of Debug level. This means you need to build both the Debug and Release libraries and make sure that you don't mess around with the filenames (it should automatically pick up the correct one.
The one thing you need to manually change in the AAX library VS solution is to switch the runtime from dynamic to static for each build configuration to match the HISE compiler settings.
-
@Christoph-Hart Looks like this worked perfectly. I went to "Configuration Properties > General > Configuration Type" and changed it from "Dynamic Library (.dll)" to "Static Library (.lib)". Thank you!
-
@obolig This actually created issues later down the road. The AAX plugins that resulted from this method were about 20X the size they should have been. I didn't realize this until I got to the signing stage of development. @gorangrooves informed me that the Runtime Library needs to be set to Multi-Threaded before you build the AAX SDK.
This results in HISE building AAX plugins by simply using the regular export method. No need to adjust settings in the VS projects created by HISE/JUCE.