Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

otool(1) [osx man page]

OTOOL(1)						      General Commands Manual							  OTOOL(1)

otool - object file displaying tool SYNOPSIS
otool [ option ... ] [ file ... ] DESCRIPTION
The otool command displays specified parts of object files or libraries. If the, -m option is not used, the file arguments may be of the form libx.a(foo.o), to request information about only that object file and not the entire library. (Typically this argument must be quoted, ``libx.a(foo.o)'', to get it past the shell.) Otool understands both Mach-O (Mach object) files and universal file formats. Otool can display the specified information in either its raw (numeric) form (without the -v flag), or in a symbolic form using macro names of constants, etc. (with the -v or -V flag). At least one of the following options must be specified: -a Display the archive header, if the file is an archive. -S Display the contents of the `__.SYMDEF' file, if the file is an archive. -f Display the universal headers. -h Display the Mach header. -l Display the load commands. -L Display the names and version numbers of the shared libraries that the object file uses. -D Display just install name of a shared library. -s segname sectname Display the contents of the section (segname,sectname). If the -v flag is specified, the section is displayed as its type, unless the type is zero (the section header flags). Also the sections (__OBJC,__protocol), (__OBJC,__string_object) and (__OBJC,__run- time_setup) are displayed symbolically if the -v flag is specified. -t Display the contents of the (__TEXT,__text) section. With the -v flag, this disassembles the text. And with -V, it also symboli- cally disassembles the operands. -d Display the contents of the (__DATA,__data) section. -o Display the contents of the __OBJC segment used by the Objective-C run-time system. -r Display the relocation entries. -c Display the argument strings (argv[] and envp[]) from a core file. -I Display the indirect symbol table. -T Display the table of contents for a dynamically linked shared library. -R Display the reference table of a dynamically linked shared library. -M Display the module table of a dynamically linked shared library. -H Display the two-level namespace hints table. The following options may also be given: -p name Used with the -t and -v or -V options to start the disassembly from symbol name and continue to the end of the (__TEXT,__text) sec- tion. -v Display verbosely (symbolically) when possible. -V Display the disassembled operands symbolically (this implies the -v option). This is useful with the -t option. -X Don't display leading addresses when displaying contents of sections. -arch arch_type Specifies the architecture, arch_type, of the file for otool(1) to operate on when the file is a universal file. (See arch(3) for the currently know arch_types.) The arch_type can be "all" to operate on all architectures in the file. The default is to display only the host architecture, if the file contains it; otherwise, all architectures in the file are shown. -m The object file names are not assumed to be in the archive(member) syntax, which allows file names containing parenthesis. Apple Computer, Inc. July 28, 2005 OTOOL(1)

Check Out this Related Man Page

LIPO(1) 						      General Commands Manual							   LIPO(1)

lipo - create or operate on universal files SYNOPSIS
lipo [-info] [-detailed_info] [-arch arch_type input_file] ... [ input_file] ... [-arch_blank arch_type] [-create] [-thin arch_type] [-replace arch_type filename] ... [-remove arch_type] ... [-extract arch_type] ... [-extract_family arch_type] ... [-verify_arch arch_type ...] [-output output_file] [-segalign arch_type value] ... DESCRIPTION
The lipo command creates or operates on ``universal'' (multi-architecture) files. It only ever produces one output file, and never alters the input file. The operations that lipo performs are: listing the architecture types in a universal file; creating a single universal file from one or more input files; thinning out a single universal file to one specified architecture type; and extracting, replacing, and/or removing architectures types from the input file to create a single new universal output file. Only one option can be specified, with the exception of -arch, -arch_blank, -output, and -segalign, which are used in combination with other options. The input_file argument is required, and only the -create option allows more than one input_file to be specified. The -output flag must be used, except with the -info and -detailed_info flags. The arch_type arguments may be any of the supported architecture names listed in the man page arch(3). OPTIONS
-info Briefly list the architecture types in the input universal file (just the names of each architecture). -detailed_info Display a detailed list of the architecture types in the input universal file (all the the information in the universal header, for each architecture in the file). -arch arch_type input_file Tells lipo that input_file contains the specified architecture type. The -arch arch_type specification is unnecessary if input_file is an object file, a universal file, or some other file whose architecture(s) lipo can figure out. -arch_blank arch_type Specifies that the output for the specified arch_type will be an MH_DYLIB_STUB file. This flag may not be used with any operation other than -create. -output output_file Specifies its argument to be the output file. -create Take the input files (or file) and create one universal output file from them. -thin arch_type Take one input file and create a thin output file with the specified arch_type. -replace arch_type file_name Take one universal input file; in the output file, replace the arch_type contents of the input file with the contents of the speci- fied file_name. -remove arch_type Take one universal input file and remove the arch_type from that universal file, placing the result in the output file. -extract arch_type Take one universal input file and copy the arch_type from that universal file into a universal output file containing only that architecture. -extract_family arch_type Take one universal input file and copy all of the arch_types for the family that arch_type is in from that universal file into an output file containing only those architectures. The file will be thin if only one architecture is found or universal otherwise. -verify_arch arch_type ... Take one input file and verify the specified arch_types are present in the file. If so then exit with a status of 0 else exit with a status of 1. -segalign arch_type value Set the segment alignment of the specified arch_type when creating a universal file containing that architecture. value is a hexa- decimal number that must be an integral power of 2. This is only needed when lipo can't figure out the alignment of an input file (currently not an object file), or when it guesses at the alignment too conservatively. The default for files unknown to lipo is 0 (2^0, or an alignment of one byte), and the default alignment for archives is 4 (2^2, or 4-byte alignment). SEE ALSO
arch(3) Apple Computer, Inc. September 12, 2006 LIPO(1)
Man Page