How can I test my native macOS app on an Intel-based hardware when I developed it on an Apple Silicon (M2 chip)?

I've written a native app for macOS on my MacBook Air (with the Apple M2 chip.) Now I need to test it for an Intel-based CPU. When I build my app in Xcode, it is supposed to cover both ARM64 and x86-64 architectures in a single Mach-O binary, but when I send it to my customer he tells me that the app works on the Apple silicon but it crashes on his Intel-based Mac. So I'm looking for ways to test-run my app on an Intel-based platform and see what is wrong there. (But I obviously don't want to buy a separate Mac just for that.)

I know that one can use Azure to spin up a Windows, or a Linux VM and open it via a web browser. But it doesn't seem to support macOS.

How can I run an Intel-based macOS in a virtual environment?

Or, do you have any other suggestions?

Replies

Apple doesn’t provide a way to run an Intel VM on Apple silicon. It might be possible with third-party VM products, but I don’t have any direct experience with that.

In terms of cloud stuff, there are definitely folks out there who’ll rent you a Intel-based Mac, both real and virtual. Again, I’ve no specific recommendation because I’ve no direct experience with that stuff.

In terms of testing locally, there’s always Rosetta. Grab the build that you sent to your customer, unpack it, and in the Finder choose File > Info and enable Open using Rosetta. Rosetta isn’t perfect, but it generally does a good job of flushing out Intel-specific problems.

Can you get your customer to send you a crash report? That might offer insight into what’s going wrong.

Share and Enjoy

Quinn “The Eskimo!” @ Developer Technical Support @ Apple
let myEmail = "eskimo" + "1" + "@" + "apple.com"

@eskimo Thanks. I tried to get a crash log but didn't succeed. I don't want to bug the customer too much with it. Plus for me, it's always better to test it out in my own dev environment.

Quick question about Rosetta. I guess I'm too late to the game and have never used it. Is there a tutorial that can show what you suggested there?

Is there a tutorial that can show what you suggested there?

Probably, but nothing that I have a handy link to. Consider this:

  1. On my Apple silicon Mac, I have a copy of the Hex Fiend app in the Applications folder.

  2. In Finder, I navigate to Applications and select Hex Fiend.

  3. I then choose File > Get Info.

  4. In the General slice of the info window, there’s an Open using Rosetta checkbox. I check that.

  5. I close the info window.

  6. And then double click the app in the Finder.

  7. If this is the first Intel app you’ve run, the system will ask you whether you want to install Rosetta. If not, the app will launch immediately.

  8. Either way, a quick trip to Activity Monitor confirms that the Intel slice of the app is running.

Share and Enjoy

Quinn “The Eskimo!” @ Developer Technical Support @ Apple
let myEmail = "eskimo" + "1" + "@" + "apple.com"