

#MAC OS X PROGRAMMING ARCHIVE#
Ranlib (which is a symlink to libtool) adds or updates the table of contents of archive libraries produced with ar. Libtool takes the specified input object files and creates a library for use with the link editor, ld. # Print a verbose list of the contents of an archive fileĪr -tv /usr/local/src/fuego-0.4.1/go/libfuego_go.a Note: Static libraries are archives that were processed with ranlib. Once an archive has been created, new files can be added and existing files can be extracted, deleted, or replaced. # lipo -info /Applications/iTunes.app/Contents/MacOS/iTunesĪrchitectures in the fat file: /Applications/iTunes.app/Contents/MacOS/iTunes are: ppc i386Ĭreates and maintains groups of files combined into an archive. Non-fat file: iphonesimulator/libboost_thread.a is architecture: i386 Input file iphonesimulator/libboost_thread.a is not a fat file # lipo -info iphonesimulator/libboost_thread.a and extracting, replacing, and/or removing architectures types from the input file to create a single new universal output fileĪrchitectures in the fat file: iphoneos/libboost_thread.a are: armv7 armv6.thinning out a single universal file to one specified architecture type.creating a single universal file from one or more input files.listing the architecture types in a universal file.It only ever produces one output file, and never alters the input file. MH_MAGIC_64 X86_64 ALL LIB64 EXECNOUNDEFS DYLDLINK TWOLEVELįrom the man page: The lipo command creates or operates on "universal" (multi-architecture) files. Magic cputype cpusubtype caps filetype ncmds sizeofcmds flags Nargothrond:~ -> otool -hv $(which otool) If the executable is prebound, the word "PREBOUND" should be displayed in the flags section of the header. Name /usr/lib/libSystem.B.dylib (offset 24)įind out if a Mach-O executable is prebound. Any run paths embedded in the binary (LC_RPATH commands) see the section Dynamic library loading.Whether an entire library is weakly linked (the LC_LOAD_WEAK_DYLIB command) see the section Weak linking.Which shared libraries are loaded (LC_LOAD_DYLIB and LC_LOAD_WEAK_DYLIB commands).The order in which things get loaded when the program is started.usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 125.2.0)Īnother use is to display the load commands in a mach-o binary.

Probably most frequently used for displaying the names and version numbers of the shared libraries and frameworks that the object file uses:
#MAC OS X PROGRAMMING CODE#
#MAC OS X PROGRAMMING MAC OS X#

4.4 Installing global command line developer tools.3 SDK-based Development, or Cross-Development.
