Clarification on macOS VM, and nonsupport for M1 CPUs

Problems with the Mac OS X version of XAMPP, questions, comments, and anything related.

Clarification on macOS VM, and nonsupport for M1 CPUs

Postby JDLH » 12. September 2022 23:14

Hello, folks:

XAMPP is a lovely tool. I have got a great deal of value from it over the years. I appreciate the hard work of everyone who has maintained it all this time.

However, when I tried to install XAMPP onto my new MacBook Pro, with macOS 12.5 Monterey and an Apple M1 Max CPU, I ran into a number of problems. I suspect I understand now what is going on. I would like to summarise my understanding. If any of this is not correct, please clarify for me.

1. The six downloads in the Mac OS X section of the Download page (https://www.apachefriends.org/download.html) are actually three native installers, and three VM installers.

I believe that XAMPP is provided in two forms for macOS.
  1. A native installer installs MariaDB, PHP, Perl, etc. directly onto your macOS system. It supports intel (x64) or Apple M1 (arm64) CPUs.
  2. A Virtual Machine (VM) installs a virtual machine onto your macOS system. MariaDB, PHP, and Perl are installed on Linux within the virtual machine. The VM supports intel (x64) CPUs. It does not support Apple M1 (arm64) CPUs as of September 2022.
Learn more about the VM option at the <a href="https://www.apachefriends.org/faq_stackman.html">XAMPP-VM Frequently Asked Questions</a>.

The first three items in the Mac OS X section are native installers, each about 162-163 MB.
The final three items are VM installers, each about 360-361 MB. In each case, the version number corresponds to the version of PHP included in the package.

2. The macOS VMs do not support Apple M1 (arm64) CPUs.

I filed an issue on Bitnami's GitHub repot binami/vms, "[XAMPP] XAMPP VM app "MAC address" error on startup, macOS 12, M1 arm CPU" (https://github.com/bitnami/vms/issues/321). The Bitnami person answering said,

Bitnami OS X VMs only support x64 architectures (we mention that is a 64-bit package in the download link) and we can't provide you with an ETA on when ARM will be supported and if it'll be supported. The team is working now on adding support for ARM in the Bitnami containers and charts….


An earlier issue in the same repo, "[Redmine] - Install on MacOS not possible" (https://github.com/bitnami/vms/issues/307), there was a similar message: "The OS X VMs do not support ARM arch so it's not possible to use these solutions in your laptop."

Also, I tried running all three versions of the VM (7.x, 8.0.x, 8.1.x) on my MacBook Pro, with macOS 12.5 Monterey and an Apple M1 Max CPU. In each case, the VM app gave me an error (see below) when I tried to start the VM.

This same Bitnami person pointed out that Bitnami has turned support for XAMPP over to the XAMPP community. But our FAQs on MAC VMs (https://www.apachefriends.org/faq_stackman.html) do not mention support or non-support on M1 CPS. And the system requirements text on the Apache Friends website Download page does not mention M1 CPUs. Thus, if anyone in the XAMPP community (as opposed to Bitnami) has solid information about support or non-support of M1 CPUs by the VMs, please let us know.

The evidence that I can see indicates that the macOS VMs do not support Apple M1 (arm64) CPUs.

3. The error message "cannot calculate MAC address" is most likely a symptom of the VM app running on an M1 CPU, which it does not support.

There are numerous posts on this forum, reporting similar errors when running the XAMPP VM app. They report that the VM app installs on macOS, and that the app runs. But when one pushes the "Start" button to start the VM, it fails, and displays an error message like:
Error starting “XAMPP” stack
cannot calculate MAC address: Using fd 16 for I/O notifications
hv_vm_create unknown error 0x00000004


Some of the forum threads reporting symptoms like this:

  • Error of MAC Address for Wordpress (https://community.apachefriends.org/f/viewtopic.php?f=29&t=82261)
  • XAMPP VM is not opening on MacOS 13 beta (Ventura) (https://community.apachefriends.org/f/viewtopic.php?f=29&t=82195)
  • Error when I click start (https://community.apachefriends.org/f/viewtopic.php?f=29&t=82197&p=277241&hilit=+cannot+calculate+MAC+address+#p277241)
  • Error starting "XAMPP" stack (https://community.apachefriends.org/f/viewtopic.php?f=29&t=82063&p=276596&hilit=+cannot+calculate+MAC+address+#p276596)
  • Installation problem (XAMP 8.1.4-0) (https://community.apachefriends.org/f/viewtopic.php?f=29&t=81854&p=276735&hilit=+cannot+calculate+MAC+address+#p276735)

These posts tend not to be clear whether their computer has an intel (x64) or Apple M1 (arm64) CPU. I think this is critical information. They are also sometimes not clear about what version of macOS they are running, so it is hard to tell if there is a macOS version incompatibility problem as well.

These threads tend to suggest one of three solutions:
  1. Use the native installer instead of the VM installer. When it works, that indirectly confirms that the problem was the VM not supporting an M1 CPU.
  2. Delete the `~/.bitnami/` directory, and run the VM app again. This may fix some problems, if caused by the VM machinery getting corrupted. It would not fix a problem of the VM app not supporting the CPU it finds itself on. It did not help me.
  3. Download a test version of a component, `hyperkit-testing-20210430`. This seems to have helped some people in 2021. I observe that the VM installers as of Sept 2022 apparently include this version of the hyperkit module already. This test version of hyperkit did not work for me.

So my understanding from the forum threads is, if you run the VM app on an Apple M1 CPU, and encounter an error message "cannot calculate MAC address" as quoted above, your first conclusion should be that the VM app does not support M1 CPUs, so you should find another solution (the XAMPP native installer, or some alternative to XAMPP). If you encounter the error message while not on an M1 CPU, then that is a different situation, and post to the forum.

Next steps

In the hopes of making this situation clearer for the next M1 CPU user who wants to download XAMPP, I have filed two proposed changes to the Apache Friends website:
  1. Clarify macOS (OS X) options in download.html (https://github.com/ApacheFriends/web-static/pull/4)
  2. Add Mac VM FAQs related to arm64 non-support (https://github.com/ApacheFriends/web-static/pull/5)


It looks like the repo, "web-static", contains static HTML pages generated from a template. If that is correct, then editing the template might be better. However, I did not find the template on https://github.com/ApacheFriends/ .
JDLH
 
Posts: 23
Joined: 11. September 2022 02:27
XAMPP version: 7.4
Operating System: macOS 12.6

Return to XAMPP for macOS

Who is online

Users browsing this forum: No registered users and 26 guests