• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
Re: 64-bit, 10.5/10.4, SDK build settings
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: 64-bit, 10.5/10.4, SDK build settings


  • Subject: Re: 64-bit, 10.5/10.4, SDK build settings
  • From: Greg Guerin <email@hidden>
  • Date: Tue, 2 Jun 2009 14:55:33 -0700

Alex Sheh wrote:

So my understanding is, if I build a 64-bit Objective-C application, then it can only run on 10.5 or later (since there is no 64-bit Objective-C runtime on 10.4). And if I want an Objective- C application to run on 10.4, then it must be compiled as 32-bit.

Correct.

This would mean that I need to ship 2 versions of the software, an installer containing the 32-bit version of the Objective-C application to run on 10.4 (Tiger), and another installer containing the 64-bit version of the Objective-C application to run on 10.5 (Leopard) or later.


Incorrect.

Universal binaries can be 4-way executable: ppc + ppc64 + i386 + x86_64.

The slice for one arch, say "ppc", need not be compiled for the same OS version as the slice for another arch, say "ppc64".


... the ppc64 binary would have to be either 32-bit or 64-bit, ...


That's nonsense. There is no such thing as a ppc64 binary that's 32- bit. It doesn't exist. It can't exist. If it's ppc64, it is always and only 64-bit.

What can and does exist is a 32-bit binary that runs on a CPU which can also run the ppc64 arch name, namely a G5. That arch name is "ppc" or "ppc7400", though, not "ppc64".

Every CPU that can run ppc64 can also run ppc. Likewise, every CPU that can run x86_64 can also run i386.

You're really confused about this. You should start with what the hardware is. What CPU does the user have? Once that's been identified, you can determine which arch names will execute on it.

Next you determine what OS version the user has. This will determine whether there is or isn't a 64-bit option at all. If there's no 64- bit option for the OS, then it doesn't matter what the hardware is, you can't run 64-bit on that OS version.

If that's still confusing, then draw the logic tree as an actual diagram on a piece of paper, starting with CPU hardware and adding conditionals for OS version.

  -- GG

_______________________________________________
Do not post admin requests to the list. They will be ignored.
Xcode-users mailing list      (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden


  • Follow-Ups:
    • RE: 64-bit, 10.5/10.4, SDK build settings
      • From: Alex Sheh <email@hidden>
  • Prev by Date: Re: 64-bit, 10.5/10.4, SDK build settings
  • Next by Date: Re: 64-bit, 10.5/10.4, SDK build settings
  • Previous by thread: Re: 64-bit, 10.5/10.4, SDK build settings
  • Next by thread: RE: 64-bit, 10.5/10.4, SDK build settings
  • Index(es):
    • Date
    • Thread