Bug #32288 OS X installer could warn about wrong platform
Submitted: 12 Nov 2007 16:56 Modified: 28 Sep 2010 17:17
Reporter: Timothy Smith Email Updates:
Status: Closed Impact on me:
None 
Category:MySQL Server: Packaging Severity:S4 (Feature request)
Version:any OS:MacOS
Assigned to: Jonathan Perkin CPU Architecture:Any

[12 Nov 2007 16:56] Timothy Smith
Description:
If the user downloads the wrong OS X package for their architecture (e.g., running  32-bit PPC, downloads 64-bit PPC), it would be nice for the MySQL installer to notice this and not complete the installation.  Currently, the installer completes with no warning, but when MySQL is run an error occurs ('Bad CPU type in executable').

How to repeat:
Download the wrong OS X package for your platform.

Install.

Run.

Suggested fix:
Make the installer refuse to install on the wrong architecture.
[12 Nov 2007 17:56] Valeriy Kravchuk
Thank you for a reasonable feature request.
[5 Dec 2007 1:10] Timothy Smith
Extra info copied from duplicate bug #32894:

Also accidently installing the PowerPC package on an
Intel machine likely means it will "run", but with very
poor performance, as the PowerPC instructions will be
interpreted by an emulator.

There are several solutions to this

(A) Let the package check the architecture and abort
    with an informative message if the wrong one.

(B) Only have one installer with an universal binary
    that works for any Mac OS X architecture.

(C) Make a combined installer with the option to
    create and install the kind of binary you want,
    single architecture, or universal with one or more
    architectures included. I.e. the creation of the
    universal binary is done by the installer (yes,
    this is possible without recompiling).

Note that (C) can be done by combining packages to one,
but also by stripping out unwanted architectures from an
universal binary with all four of them included. But that
is just a technical detail how to implement this
(see man lipo)
[28 Sep 2010 17:17] Jonathan Perkin
We've provided universal binaries on OSX for a long time now.  I don't think that any of the other suggestions are worth investing the time in now, the universal packages should suffice.