I just updated and am getting the following build errors under Mac OS/X, 10.6.
In file included from /development/rec/projects/slow/Builds/MacOSX/../../../../../juce/modules/juce_audio_devices/juce_audio_devices.cpp:174,
from /development/rec/projects/slow/Builds/MacOSX/../../../../../juce/modules/juce_audio_devices/juce_audio_devices.mm:26:
/development/rec/projects/slow/Builds/MacOSX/../../../../../juce/modules/juce_audio_devices/native/juce_mac_AudioCDBurner.mm: In constructor 'juce::AudioTrackProducerClass::AudioTrackProducerClass()':
/development/rec/projects/slow/Builds/MacOSX/../../../../../juce/modules/juce_audio_devices/native/juce_mac_AudioCDBurner.mm:30: error: class 'juce::AudioTrackProducerClass' does not have any field named 'ObjCClass'
/development/rec/projects/slow/Builds/MacOSX/../../../../../juce/modules/juce_audio_devices/native/juce_mac_AudioCDBurner.mm:30: error: no matching function for call to 'juce::ObjCClass<NSObject>::ObjCClass()'
/development/rec/projects/slow/Builds/MacOSX/../../../../../juce/modules/juce_audio_devices/../juce_core/native/juce_osx_ObjCHelpers.h:141: note: candidates are: juce::ObjCClass<SuperclassType>::ObjCClass(const juce::ObjCClass<SuperclassType>&) [with SuperclassType = NSObject]
Ah no, sorry - I didn’t scroll all the way down your errors. In fact I think this is probably just because the compiler is trying to generate a copy constructor. (Perhaps you’re using GCC vs my Clang?)
If so, adding “JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (AudioTrackProducerClass);” inside AudioTrackProducerClass should fix it.
private:
JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (AudioTrackProducerClass);
to the end of struct AudioTrackProducerClass in juce_mac_AudioCDBurner.mm and got the same error.
I’m rather tipsy at this point (not too tipsy to make clear bug reports, mind you, but still) and about to go out and do more Berlin nightlife so I’ll take this up again tomorrow AM…
Doh! Sorry. In fact, I had just missed out the extra, pointless template specifier, which GCC requires, but LLVM is more chilled about. I fixed this in some other places but missed this one. Sorted now.
Unfortunately, this doesn’t seem to fix it, at least on Mac OS/X 1.6 - there’s an error at or around the same line.
Now, it seems to me that if I were reading the error dump below, I’d say that can’t be all of it - because there doesn’t seem to be an error before the last error, which is
but I assure you that there are no more errors, I checked 'em three times.
I just dumped all my precompiled headers and such and rebuilt. This occasionally fixes weird issues… waiting… darn this one-half-core laptop… done, same issue.
In file included from /development/rec/projects/slow/Builds/MacOSX/…/…/…/…/…/juce/modules/juce_gui_basics/juce_gui_basics.cpp:142,
from /development/rec/projects/slow/Builds/MacOSX/…/…/…/…/…/juce/modules/juce_gui_basics/juce_gui_basics.mm:26:
/development/rec/projects/slow/Builds/MacOSX/…/…/…/…/…/juce/modules/juce_gui_basics/mouse/juce_DragAndDropContainer.cpp:447:72: warning: no newline at end of file
In file included from /development/rec/projects/slow/Builds/MacOSX/…/…/…/…/…/juce/modules/juce_gui_basics/juce_gui_basics.cpp:139,
from /development/rec/projects/slow/Builds/MacOSX/…/…/…/…/…/juce/modules/juce_gui_basics/juce_gui_basics.mm:26:
/development/rec/projects/slow/Builds/MacOSX/…/…/…/…/…/juce/modules/juce_gui_basics/components/juce_Desktop.cpp:385: warning: no previous prototype for ‘bool juce::operator==(const juce::Displays::Display&, const juce::Displays::Display&)’
/development/rec/projects/slow/Builds/MacOSX/…/…/…/…/…/juce/modules/juce_gui_basics/components/juce_Desktop.cpp:393: warning: no previous prototype for 'bool juce::operator!=(const juce::Displays::Display&, const juce::Displays::Display&)'
In file included from /development/rec/projects/slow/Builds/MacOSX/…/…/…/…/…/juce/modules/juce_gui_basics/juce_gui_basics.cpp:266,
from /development/rec/projects/slow/Builds/MacOSX/…/…/…/…/…/juce/modules/juce_gui_basics/juce_gui_basics.mm:26:
/development/rec/projects/slow/Builds/MacOSX/…/…/…/…/…/juce/modules/juce_gui_basics/native/juce_mac_NSViewComponentPeer.mm: In constructor ‘juce::NSViewComponentPeer::NSViewComponentPeer(juce::Component*, int, NSView*)’:
/development/rec/projects/slow/Builds/MacOSX/…/…/…/…/…/juce/modules/juce_gui_basics/native/juce_mac_NSViewComponentPeer.mm:79: warning: undeclared selector ‘frameChanged:’
/development/rec/projects/slow/Builds/MacOSX/…/…/…/…/…/juce/modules/juce_gui_basics/native/juce_mac_NSViewComponentPeer.mm:85: warning: undeclared selector ‘frameChanged:’
/development/rec/projects/slow/Builds/MacOSX/…/…/…/…/…/juce/modules/juce_gui_basics/native/juce_mac_NSViewComponentPeer.mm:100: warning: multiple methods named ‘-frame’ found
/System/Library/Frameworks/AppKit.framework/Headers/NSView.h:198: warning: using ‘-(NSRect)frame’
/System/Library/Frameworks/QuartzCore.framework/Headers/CALayer.h:182: warning: also found ‘-(CGRect)frame’
/development/rec/projects/slow/Builds/MacOSX/…/…/…/…/…/juce/modules/juce_gui_basics/native/juce_mac_NSViewComponentPeer.mm: In member function ‘virtual void juce::NSViewComponentPeer::setBounds(int, int, int, int, bool)’:
/development/rec/projects/slow/Builds/MacOSX/…/…/…/…/…/juce/modules/juce_gui_basics/native/juce_mac_NSViewComponentPeer.mm:221: warning: multiple methods named ‘-frame’ found
/System/Library/Frameworks/AppKit.framework/Headers/NSView.h:198: warning: using ‘-(NSRect)frame’
/System/Library/Frameworks/QuartzCore.framework/Headers/CALayer.h:182: warning: also found ‘-(CGRect)frame’
/development/rec/projects/slow/Builds/MacOSX/…/…/…/…/…/juce/modules/juce_gui_basics/native/juce_mac_NSViewComponentPeer.mm: In member function ‘juce::Rectangle juce::NSViewComponentPeer::getBounds(bool) const’:
/development/rec/projects/slow/Builds/MacOSX/…/…/…/…/…/juce/modules/juce_gui_basics/native/juce_mac_NSViewComponentPeer.mm:236: warning: ‘NSWindow’ may not respond to ‘-convertRectToScreen:’
/development/rec/projects/slow/Builds/MacOSX/…/…/…/…/…/juce/modules/juce_gui_basics/native/juce_mac_NSViewComponentPeer.mm:236: warning: (Messages without a matching method signature
/development/rec/projects/slow/Builds/MacOSX/…/…/…/…/…/juce/modules/juce_gui_basics/native/juce_mac_NSViewComponentPeer.mm:236: warning: will be assumed to return ‘id’ and accept
/development/rec/projects/slow/Builds/MacOSX/…/…/…/…/…/juce/modules/juce_gui_basics/native/juce_mac_NSViewComponentPeer.mm:236: warning: ‘…’ as arguments.)
/development/rec/projects/slow/Builds/MacOSX/…/…/…/…/…/juce/modules/juce_gui_basics/native/juce_mac_NSViewComponentPeer.mm:236: confused by earlier errors, bailing out
[/code]