Posts RSS Comments RSS 48 Posts and 155 Comments till now

Determining if an application is 64 bit, 32 bit or both

With the release of Leopard Macs now have the ability to run 64 bit applications natively from the GUI. Tiger, the previous release of the OS, supported 64 bit applications but only at the command line. Also, most Macintosh applications these days come as Universal Binaries so they can run on Intel and PowerPC machines.

So how do you tell if you have a 64 bit capable application?

The first place to look is the “Get Info” box of the application itself. If it has a checkbox that gives you the option to run it as a 32 bit application then it is 64 bit. But, is it 64 bit for Intel machines only or for both PowerPC and Intel?

The solution to the problem is found in Terminal using the file command.

Open up Terminal and cd into your application and find the actual compiled binary. This is located in /Contents/MacOS inside your application.

So, for example, if I wanted to check out iWeb I would type the following:

cd /Applications/iWeb.app/Contents/MacOS/

Typing ls once you are inside the app will show you the actual name of the binary.

Now, use the file command on that binary.

file iWeb

That returns the following:


iWeb: Mach-O universal binary with 2 architectures
iWeb (for architecture ppc): Mach-O executable ppc
iWeb (for architecture i386): Mach-O executable i386

Here’s how to read the results:

(for architecture ppc) = 32 bit PowerPC executable
(for architecture ppc64) = 64 bit PowerPC executable
(for architecture i386) = 32 bit Intel executable
(for architecture x86_64) = 64 bin Intel executable

So, we can see that iWeb has one 32 bit executable for PowerPC machines and one 32 bit executable for Intel (i386) machines.

8 Responses to “Determining if an application is 64 bit, 32 bit or both”

  1. on 02 Mar 2008 at 10:32 amwireface

    This is totally wrong. You mean file not find.

    The “find” command will tell you nothing about the architecture a binary was compiled for.
    The “file” command on the other hand will do what is described in this article!

  2. on 28 Mar 2008 at 12:56 pmwebmaster

    You are absolutely correct. Thanks for catching my typo. “File” was the command I meant to type but in a “not paying attention moment” typed “Find” instead. I’ve made the correction. Thanks for spotting that.

  3. on 04 Jan 2011 at 9:24 pmBlondie

    Save yourself a lot of trouble, just open up Activity Monitor and for all open applications it’ll tell you if it’s 64 bit (or 32 bit by default).

  4. on 28 Jan 2011 at 2:22 amTuto

    The Activity Monitor only shows “Intel” on al the applications, how do I know if it’s 32 or 64?

  5. on 28 Jan 2011 at 9:14 amwebmaster

    Use System Profiler to see if it’s 32 or 64 bit.

  6. on 25 May 2011 at 12:06 pmJefferson

    @Blondie, that’s only helpful if you want to know what architecture the app is running under. I often want to know all the architectures the binary is compiled for, so the “file” command is very helpful.

    @Tuto, the “Kind” column in Activity Monitor will tell you if it is running 32 or 64 bit.

  7. on 03 Oct 2014 at 1:43 pmJean

    Helpful. Thanks.

  8. […] For more info, see this Mac Stuff article. […]