Undefined symbols compile errors on OS X 10.5


#1

Hey Jules

I've just updated the JUCE lib from 2.1.1 to the latest tip and it's coming up with a couple of "Undefined symbols for architecture x86_64" when setting the base SDK to 10.5.

The errors I'm getting are:

 

Undefined symbols for architecture x86_64:

  "__Block_object_assign", referenced from:

      ___copy_helper_block_ in juce_events.o

  "__Block_object_dispose", referenced from:

      ___destroy_helper_block_ in juce_events.o

  "__NSConcreteStackBlock", referenced from:

      juce::repostCurrentNSEvent() in juce_events.o

ld: symbol(s) not found for architecture x86_64

 

All is fine when set to 10.6 or above though. Is there a fix for this?

 


#2

Hmm, those are internal objective-C runtime functions. Not 100% sure what's going on, but you could try setting JUCE_COMPILER_SUPPORTS_ARC = 0


#3

That didn't seem to fix the problem...


#4

Ah, it's because I used a obj-C block. Try again now.

Sigh.. It'll be nice one day to be able to use some vaguely modern compiler features without having to worry about all this legacy stuff.


#5

Great stuff, all is working now. Thanks for the quick fix Jules!