Mailing Lists: Apple Mailing Lists

Image of Mac OS face in stamp
 
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Finding the architectures of a binary




On Nov 10, 2008, at 7:06 PM, Clark Cox wrote:

On Mon, Nov 10, 2008 at 9:23 AM, Iceberg-Dev <email@hidden> wrote:

On Nov 10, 2008, at 4:08 PM, Finlay Dobbie wrote:

http://www.opensource.apple.com/darwinsource/10.5.5/cctools-667.3/ misc/lipo.c

Thanks.

Is it supoosed to be up-to-date and 64-bit compatible?

I'm asking because for instance, this line looks suspicious:

(*((unsigned long *)addr) == MH_MAGIC ||

What looks suspicious about it?

The ability to run this code as a 64-bit executable.

The magic cookie is a 32-bit value. AFAIK, if you build a 64-bit executable and use unsigned long, it's a 64-bit value.

With a PowerPC, I'm not sure you can guarantee that the higher 4 bytes will be equal to 0x00000000 as the magic cookie can be the first 4 bytes of a file (non fat). With an Intel Mac, the issue would be different, since it would assume that the 4 bytes after the magic cookie in the binary should be 0x00000000 instead of the cpu_type.




_______________________________________________ Do not post admin requests to the list. They will be ignored. Darwin-dev mailing list (email@hidden) Help/Unsubscribe/Update your Subscription: http://lists.apple.com/mailman/options/darwin-dev/email@hidden

This email sent to email@hidden
References: 
 >Finding the architectures of a binary (From: Iceberg-Dev <email@hidden>)
 >Re: Finding the architectures of a binary (From: Brian Bergstrand <email@hidden>)
 >Re: Finding the architectures of a binary (From: Alexander von Below <email@hidden>)
 >Re: Finding the architectures of a binary (From: Iceberg-Dev <email@hidden>)
 >Re: Finding the architectures of a binary (From: "Finlay Dobbie" <email@hidden>)
 >Re: Finding the architectures of a binary (From: Iceberg-Dev <email@hidden>)
 >Re: Finding the architectures of a binary (From: "Clark Cox" <email@hidden>)



Visit the Apple Store online or at retail locations.
1-800-MY-APPLE

Contact Apple | Terms of Use | Privacy Policy

Copyright © 2007 Apple Inc. All rights reserved.