32 bit application support on mac post high sierra

About SheepShaver, a PPC Mac emulator for Windows, MacOS X, and Linux that can run System 7.5.3 to MacOS 9.0.4.

Moderators: Cat_7, Ronald P. Regensburg, ClockWise

Post Reply
Deepak Goyal
Space Cadet
Posts: 1
Joined: Thu Jan 25, 2018 2:13 pm

32 bit application support on mac post high sierra

Post by Deepak Goyal »

Hello

I have built a 32 bit application on Mac and I do not have enough time to migrate that to 64 bit. Is there any way using SheepShaver or any other product, I will still be able to run 32 bit applications post High Sierra timeframe?
User avatar
adespoton
Forum All-Star
Posts: 4227
Joined: Fri Nov 27, 2009 5:11 am
Location: Emaculation.com
Contact:

Re: 32 bit application support on mac post high sierra

Post by adespoton »

SheepShaver runs software compiled against the Classic Mac toolbox on 680x0 and PowerPC architectures.

Compiling an application against the 32-bit Cocoa x86 framework means it will run in OS X 10.4 Intel through OS X 10.13 Intel -- assuming you compiled against the 10.4 development framework.

So the first question is: what architecture did you build your app for? Which OS does it target?

Using VirtualBox, Parallels Desktop Lite or VMWare Fusion, you can install OS X 10.6 through 10.13 in a virtual machine. I keep a 10.6 VM around for running Adobe CS4, an XCode development environment that can compile 10.4PPC through 10.6Intel, and a few other things. Such an image would also likely run your software as long as it was at least compiled for 32-bit PPC and Carbon-ready.
User avatar
adespoton
Forum All-Star
Posts: 4227
Joined: Fri Nov 27, 2009 5:11 am
Location: Emaculation.com
Contact:

Re: 32 bit application support on mac post high sierra

Post by adespoton »

Well, it looks like the writing is officially on the wall:
https://arstechnica.com/gadgets/2018/01 ... p-support/

The latest XCode has a number of utilities to aid in converting from 32 to 64 bit.

What I'm curious about is if we're eventually going to need a 32-bit emulator: the instruction set for 64-bit Intel is actually different than the 32-bit instruction set, so if Apple drops 32-bit instructions at the hardware level, virtualization won't cut it.

So with 10.14, we'll lose access to 32-bit APIs in the OS, but it's technically possible that we'll lose access at the chip level before too long as well.

[edit]

Code: Select all

    To enable 64-bit mode:
    1. Launch Terminal
    2. Execute the following command: sudo nvram boot-args="-no32exec"
    3. Restart the machine
    64-bit test mode prevents 32-bit processes from launching. Launching an app that depends on 32-bit software results in a notification that the application can't be opened. Other types of software may fail silently, such as 32-bit versions of Dashboard and WebKit plugins, preference panes, and background processes.
    Disable the test mode once the software is updated to work in 64-bit.
    To disable the test mode:
    1. Launch Terminal
    2. Execute the following command: sudo nvram boot-args=“”
    3. Restart the machine
Post Reply