Osx sdk 10.7


#1

Hi Jules,
Is it just me or is it impossible to build Juce with OSX SDK 10.7 ? I get a bunch of errors related to “CarbonDummyPointName” etc…
A quick fix is to comment out those #defines. I have a vague understanding why the statements are needed otherwise, but apparently
its counterproductive in 10.7+ SDK

Perhaps have it depend on the SKD version?

In at least Xcode 4.4, the available SDK’s are 10.7 and 10.8


#2

On the other hand… It’s only when I compile the AU wrapper I get this error, and I know I compile against 10.7 in other places. Perhaps my project file is at fault?


#3

Well, the AU code still uses some carbon functions for backwards compatibility. You can turn them off if you set JUCE_SUPPORT_CARBON to 0, if I remember correctly.


#4

I’m not 100% sure how the AU standard works. Is it allowed for a plug-in to have only Cocoa UI’s? Is the host required to load & display the plug-in anyway? Are there any known hosts that fail to load Cocoa-only plug-ins?


#5

I’m getting bitten by this using JUCE 2.0 for an AAX plugin GUI. Should not the following lines in juce_gui_basics.cpp be wrapped within an #if JUCE_SUPPORT_CARBON statement?

#define Point CarbonDummyPointName #define Component CarbonDummyCompName #import <Carbon/Carbon.h> // still needed for SetSystemUIMode() #undef Point


#6

[quote=“sophia”]I’m getting bitten by this using JUCE 2.0 for an AAX plugin GUI. Should not the following lines in juce_gui_basics.cpp be wrapped within an #if JUCE_SUPPORT_CARBON statement?
[/quote]I haven’t yet started messing with the AAX, but when I was building the AU under SDK 10.7, I found that all errors went away if I did NOT set JUCE_SUPPORT_CARBON to zero but rather

which in itself feels counter-intuitive.


#7

Aside from juce_gui_basics.cpp I see now that this is an issue in juce_gui_extra.cpp and juce_audio_processors.cpp as well, and perhaps juce_VST_Wrapper.cpp (though I’m not sure whether the VST wrapper code depends on Carbon anyway). juce_IncludeSystemHeaders.h however handles Carbon.h including as it should, wrapping all of that CarbonDummyPointName, CarbonDummyCompName, and #include <Carbon/Carbon.h> as it should wrapped within #if JUCE_SUPPORT_CARBON
Anyway, hoping that this might be addressed in a future update.


#8

I recently upgraded to using JUCE 3, and I see that juce_gui_basics.cpp has since been ammended with my suggested change, however I still have the issue with juce_gui_extra.cpp (and for whatever reason juce_audio_processors.cpp, while unchanged in that spot, is compiling okay for me now).


#9

I didn't realise that was still there - it's not actually necessary at all, so I've removed it now. Thanks!