ADC Home > Reference Library > Reference > Mac OS X > Mac OS X Man Pages

 

This document is a Mac OS X manual page. Manual pages are a command-line technology for providing documentation. You can view these manual pages locally using the man(1) command. These manual pages come from many different sources, and thus, have a variety of writing styles.

This manual page is associated with the Mac OS X developer tools. The software or headers described may not be present on your Mac OS X installation until you install the developer tools package. This package is available on your Mac OS X installation DVD, and the latest versions can be downloaded from developer.apple.com.

For more information about the manual page format, see the manual page for manpages(5).



REDO_PREBINDING(1)                                                                        REDO_PREBINDING(1)



NAME
       redo_prebinding - redo the prebinding of an executable or dynamic library

SYNOPSIS
       redo_prebinding  [-c | -p | -d] [-i] [-z] [-u] [-r rootdir] [-e executable_path] [-seg_addr_table ta-ble_file_name] table_file_name]
       ble_file_name]  [-seg_addr_table_filename  pathname]  [-seg1addr  address]  [-o   output_file]   [-s]
       input_file

DESCRIPTION
       Redo_prebinding  is  used  to redo the prebinding of an executable or dynamic library when one of the
       dependent dynamic libraries changes.  The input file, executable or dynamic library, must  have  ini-tially initially
       tially  been prebound for this program to redo the prebinding.  Also all depended libraries must have
       their prebinding up to date.  So when redoing the prebinding for  libraries  they  must  be  done  in
       dependency  order.  Also when building executables or dynamic libraries that are to be prebound (with
       the -prebind options to ld(1) or libtool(1)) the dependent libraries must have their prebinding up to
       date or the result will not be prebound.

       The options allow for different types of checking for use in shell scripts.  Only one of -c, -p or -d
       can be used at a time.  If redo_prebinding redoes the  prebinding  on  an  input  file  it  will  run
       /usr/bin/objcunique if it exists on the result.

OPTIONS
       -c     only check if the file needs to have it's prebinding redone and return status.  A 0 exit means
              the file's prebinding is up to date, 1 means it needs to be redone and 2 means it could not be
              checked  for reasons like a dependent library is missing (an error message is printed in these
              cases).

       -p     check only for prebound files and return status.  An exit status of 1  means  the  file  is  a
              Mach-O that could have been prebound and is not otherwise the exit status is 0.

       -d     check  only for dynamic shared library files and return status.  An exit status of 0 means the
              file is a dynamic shared library, 1 means the file is not, 2 means there is some  mix  in  the
              architectures.

       -i     ignore non-prebound files (useful when running on all types of files).

       -z     zero out the prebind check sum in the output if it has one.

       -u     unprebind,  rather than reprebind (-c, -p, -d, -e ignored).  Resets or removes prebinding-spe-cific prebinding-specific
              cific information from the input file.  As unprebinding is intended  to  produce  a  canonical
              Mach-O  binary,  bundles and non-prebound executables and dylibs are acceptable as input.  For
              these files, the  unprebind operation will zero library time stamps and  version  numbers  and
              zero entries in the two-level hints table.

       -e executable_path
              replace any dependent library's "@executable_path" prefix with the executable_path argument.

       -seg_addr_table table_file_name
              The -seg_addr_table option is used when the input a dynamic library and if specified the table
              entry for the install_name of the dynamic library is used for  checking  and  the  address  to
              relocate the library to as it prefered address.

       -seg_addr_table_filename pathname
              Use  pathname  instead of the install name of the library for matching an entry in the segment
              address table.

       -seg1addr address
              Move the input library to  base  address  address.   This  option  does  not  apply  when  -u,
              -seg_addr_table or -seg_addr_table_filename are specified.

       -r rootdir
              prepend the rootdir argument to all dependent libraries.

       -o output_file
              write the updated file into output_file rather than back into the input file.

       -s     write the updated file to standard output

DIAGNOSTICS
       With  no  -c, -p or -d an exit status of 0 means success and 2 means it could not be done for reasons
       like a dependent library is missing (an error message is printed in these cases).  And exit of  3  is
       for the specific case when the dependent libraries are out of date with respect to each other.



Apple Computer, Inc.                           March 29, 2004                             REDO_PREBINDING(1)

Did this document help you?
Yes: Tell us what works for you.
It’s good, but: Report typos, inaccuracies, and so forth.
It wasn’t helpful: Tell us what would have helped.