Lighthouse has a new layout. Prefer the old one? Return to the old layout, and switch back any time from the link at the top of each page.

Figure out how best to handle 32-bit-only plugins

#2

The latest ITC-18 SDK does not include 64-bit binaries, so the ITC-18 plugin is 32-bit-only, meaning MWServer must run as a 32-bit process in order to use it. Also, if a user has 32-bit MATLAB, then MWClient must run in 32-bit mode in order to use the MATLAB window. (At least, I assume that's the case.) Currently, the user's only option for dealing with this is to do "Get Info" on the relevant app in the Finder and check "Open in 32-bit mode". It'd be nice if we could handle this automatically.

Maybe the client and server could monitor plugin load failures and offer to restart in 32-bit mode if needed? Alternatively, application launch could be handled by a shell script that checks plugin architectures and then launches the appropriate binary.

This Apple support document is relevant. Although Solution 2 seems preferrable to Solution 3, the former didn't work for me.

Also, this blog post could be useful.

Reported by Christopher Stawarz · April 20th, 2010 @ 05:57 PM

State: invalid
Milestone: none
Assigned to: Christopher Stawarz Christopher Stawarz

Activity

  1. Christopher Stawarz
    Christopher Stawarz
    • State changed from new to open

    Another solution might be to follow the route taken by WebKit/Safari and run 32-bit-only plugin code in a separate, 32-bit process (a la WebKitPluginAgent)

    April 27th, 2010 @ 07:22 PM

  2. Christopher Stawarz
    Christopher Stawarz
    • Milestone order changed from 0 to 0

    Although Solution 2 seems preferrable to Solution 3, the former didn't work for me.

    I haven't verified this, but I'm guessing it didn't work because I was modifying the installed Info.plist file. From experimentation, I've determined that some settings in Info.plist (e.g. environment variables) get baked into the application (somehow) during compilation, and you have to recompile in order for changes to take effect.

    July 14th, 2010 @ 12:40 PM

  3. Christopher Stawarz
    Christopher Stawarz

    From experimentation, I've determined that some settings in Info.plist (e.g. environment variables) get baked into the application (somehow) during compilation, and you have to recompile in order for changes to take effect.

    I take that back. The changes don't take effect immediately because Launch Services caches Info.plist contents. You can force it to update its database like so:

    /System/Library/Frameworks/CoreServices.framework/Frameworks/LaunchServices.framework/Support/lsregister -f /Applications/MWServer.app
    

    July 16th, 2010 @ 05:01 PM

  4. Christopher Stawarz
    Christopher Stawarz

    Another solution might be to follow the route taken by WebKit/Safari and run 32-bit-only plugin code in a separate, 32-bit process

    Here's a potentially useful guide to this approach.

    July 16th, 2010 @ 05:02 PM

  5. Christopher Stawarz
    Christopher Stawarz
    • State changed from open to invalid

    This issue is no longer relevant. The ITC-18 framework is now a universal binary, and MATLAB has been 64-bit only for several years.

    May 16th, 2014 @ 11:00 AM

Please Sign in or create a free account to add a new ticket.

With your very own profile, you can contribute to projects, track your activity, watch tickets, receive and update tickets through your email and much more.