Difference between revisions of "Mach-O"

From Free Pascal wiki
Jump to navigationJump to search
m
Line 12: Line 12:
  
 
[http://developer.apple.com/documentation/Darwin/Reference/ManPages/man1/nm.1.html nm] - display name list (symbol table)
 
[http://developer.apple.com/documentation/Darwin/Reference/ManPages/man1/nm.1.html nm] - display name list (symbol table)
 +
 +
== Objective-C segment ==
 +
 +
There're no documentation found over __OBJC segment and its sections. The following information has been gathered from cctools [http://opensource.apple.com/source/cctools/cctools-667.3/ sources]
 +
 +
== Sections ==
 +
 +
=== __image_info ===
 +
 +
content image info information (8 bytes):
 +
 +
imageInfo = packed record
 +
  version : uint32_t;
 +
  flags  : uint32_t;
 +
end;

Revision as of 01:10, 28 August 2009

from Wikipedia:

Mach-O, short for Mach object file format, is a file format for executables, object code, shared libraries, dynamically-loaded code, and core dumps. A derivation of the a.out format, Mach-O offered more extensibility and faster access to information in the symbol table.


File Format Reference can be found here


Following tools are used in Mac OS X to view Mach-O files:

otool - object file displaying tool

nm - display name list (symbol table)

Objective-C segment

There're no documentation found over __OBJC segment and its sections. The following information has been gathered from cctools sources

Sections

__image_info

content image info information (8 bytes):
imageInfo = packed record
  version : uint32_t;
  flags   : uint32_t;
end;