Ticket #1047 (closed defect: fixed)

Opened 23 months ago

Last modified 23 months ago

Trunk IDE does not build on OSX 10.7

Reported by: tfb Owned by:
Priority: normal Milestone:
Component: IDE Version: trunk
Keywords: Cc:

Description

See attached transcript, I think this is related to the changes made for 10.8 mentioned on the mailing list.

I tried r15564 which I think is current at the moment.

Attachments

ccl.script Download (15.1 KB) - added by tfb 23 months ago.
Script output from building the IDE with a backtrace at the point it fails

Change History

Changed 23 months ago by tfb

Script output from building the IDE with a backtrace at the point it fails

comment:1 Changed 23 months ago by rme

If you just :go from that BREAK, we'll go ahead and create a Clozure CL.app application anyway.

We seem to be checking that all the Objective-C classes found in the interfaces are defined in the run-time environment. If we use interfaces build from version n headers, system versions less than n are almost certainly going to find things in those interfaces that are not in available in the run-time environment.

Probably the expedient thing is just to remove this check. The pain-in-the-neck thing would be to supply interfaces for each OS version. I don't really think this is necessary; even in Objective-C, it's common to build binaries using, say, the 10.8 headers, and then to check at runtime for the availability for 10.8-only features.

comment:2 Changed 23 months ago by rme

(In [15567]) In build-ide, just warn about classes found in the interfaces that aren't found by the runtime. (This situation will occur on pre-10.8 systems.) This will probably cause user confusion, but at least (require 'cocoa-application) will work without having to continue from the break manually.

See ticket:1047.

comment:3 Changed 23 months ago by tfb

  • Status changed from new to closed
  • Resolution set to fixed

This now builds with a warning (as expected from the earlier comment) on 10.7 and the IDE runs. I'll probably not have time to try anything much more than starting it in the next few days, but I think this particular problem is fixed.

I've marked this resolved/fixed, hope that's OK.

Thank you

comment:4 Changed 23 months ago by rme

(In [15576]) In build-ide, don't bother checking whether all the classes in the interfaces are found in the runtime. Even warning about it is pointless: of course older systems will be missing certain classes found in interfaces built from a newer system.

What's the user supposed to do about such a warning, anyway? Install Mountain Lion? Now if we got referral commissions, that might be diferent. I can see it now: "Warning! I see that you are running a version of Mac OS X that does not include the NSPopover class. Don't you yearn to make popovers pop up over everything? Don't miss out on notifying the user of matters both mundane and extraordinary with notifications displayed in Notification Center via the new-for-Mountain-Lion NSUserNotificationCenter! Go to the Mac App Store and upgrade to the latest OS X release today!"

See ticket:1047.

Note: See TracTickets for help on using tickets.