I am trying to make my screensaver compile and run under Mavericks.
I haven’t touched the code for some years, and I haven’t recompiled it for a
few years.
I have the latest Xcode and Mac OS X 10.9.5 on a MacBookPro 2014.
When I opened the project, Xcode said that it had to convert it to ARC and
64-bit.
So, and also inserted a few bridged casts.
However, when I run the screensaver in System Preferences, I get the error
message
“You cannot use the screen saver with this version of Mac OS X …”.
I get that message also if I try to run the preview of my screensaver from
SystemPreferences.
I cleared the build setting GCC_ENABLE_OBJC_GC in Xcode build settings.
(can’t seem to delete it, though, I was just able to clear it.)
The output of 'otool -oV’ seems to tell me in the __objc_imageinfo section that
my screen saver is indeed
no longer with garbage collection.
(I.e., no mentioning of OBJC_IMAGE_SUPPORTS_GC in that section.)
Now, when I look in the system.log, I get these funny error messages:
Jan 4 01:29:14 gzsretik2014nov.speedport_w723_v_typ_a_1_01_009 System
Preferences[29427]: Garbage Collection enabled !
Jan 4 01:29:17 gzsretik2014nov.speedport_w723_v_typ_a_1_01_009 System
Preferences[29427]: Error loading
/System/Library/PrivateFrameworks/iTunesAccess.framework/iTunesAccess:
dlopen(/System/Library/PrivateFrameworks/iTunesAccess.framework/iTunesAccess,
265): no suitable image found. Did find:
/System/Library/PrivateFrameworks/iTunesAccess.framework/iTunesAccess:
GC capability mismatch
Jan 4 01:29:18 --- last message repeated 4 times ---
Jan 4 01:29:18 mylaptop System Preferences[29427]: Attempted search for
modules of unknown type (4)
Jan 4 01:29:18 mylaptop System Preferences[29427]: Error loading
/Users/zach/Library/Screen Savers/MySaver.saver/Contents/MacOS/MySaver:
dlopen(/Users/zach/Library/Screen Savers/MySaver.saver/Contents/MacOS/MySaver,
265): no suitable image found. Did find:
/Users/zach/Library/Screen Savers/MySaver.saver/Contents/MacOS/MySaver:
GC capability mismatch
Could it be that System Preferences does still expect screen savers to be
compiled with garbage collection?
In the "64-Bit Transition Guide” I found this passage:
“"
In OS X v10.7 and later, all Apple applications shipping as part of the OS are
64-bit executables. This means that users with 64-bit-capable computers will be
running the 64-bit slice of key system components. And beginning in OS X v10.8
and later, built-in apps are generally 64-bit-only. This means that any
plug-ins (screen savers, printer dialog extensions, and so on) that need to
load in these applications must be recompiled as 64-bit plug-ins.
As a special exception, the System Preferences application provides a 32-bit
fallback mode. If the user selects a system preferences pane without a 64-bit
slice, it relaunches itself as a 32-bit executable (after displaying a dialog
box). To maximize your users’ experience, however, you should still transition
these preference panes to 64-bit plug-ins as soon as possible.
“”
The last paragraph seems to hint at something like a 32-bit mode. But I didn’t
get any dialog box of System Preferences.
I’d appreciate very much any kind of help, hints, suggestions, pointers, etc.
Best regards,
Gabriel.
_______________________________________________
Cocoa-dev mailing list ([email protected])
Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com
Help/Unsubscribe/Update your Subscription:
https://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com
This email sent to [email protected]