Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

redo_prebinding(1) [opendarwin man page]

REDO_PREBINDING(1)					      General Commands Manual						REDO_PREBINDING(1)

NAME
redo_prebinding - redo the prebinding of an executable or dynamic library SYNOPSIS
redo_prebinding [-c | -p | -d] [-i] [-z] [-r rootdir] [-e executable_path] [-seg_addr_table table_file_name] [-seg_addr_table_filename pathname] [-o output_file] 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 initially 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_pre- binding 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. -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. -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. 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. September 10, 2001 REDO_PREBINDING(1)

Check Out this Related Man Page

fastbind(1)						      General Commands Manual						       fastbind(1)

NAME
fastbind - Prepare an incomplete executable for faster program start-up SYNOPSIS
incomplete-executable... DESCRIPTION
is a tool that can improve the start-up time of programs that use shared libraries (incomplete executables) by storing information about needed shared library symbols in the executable file. performs analysis on the symbols used to bind an executable and all of it's dependent shared libraries, and stores this information in the executable file. The next time the executable is run, the dynamic loader will notice that this information is available, and it will use this fastbind information to bind the executable instead of the standard search method for binding the symbols. For Itanium-based systems, the dynamic loader is for 32-bit mode or for 64-bit mode. For PA-RISC systems, the dynamic loader is for 32-bit mode or for 64-bit mode. Since writes the fastbind information in the executable file, you must have write permission on the executable file. Also, if the exe- cutable file being analyzed is being run as another process, the file will be locked against modifications by the kernel, and will fail. If the shared libraries that an executable is dependent on are modified after the fastbind information is created, the dynamic loader will silently revert to standard search method for binding the symbols. The fastbind information can be re-created by running on the executable again. will automatically erase the old fastbind information and generate the new one. The option can be used to instruct the linker to run the fastbind tool on an incomplete executable it has produced. Environment Variables If determines that the fastbind information is out of date, it will silently revert to standard search method for binding the symbols. If the environment variable is set to the dynamic loader will emit a warning message when the fastbind information is out of date. The environment variable can be set to to make the dynamic loader ignore the fastbind information and revert to the standard search method for binding the symbols. Options recognizes the following options: Remove the fastbind information from the executable, returning it to the same state it was in before was originally run on it. Normally, if detects any unsatisfied symbols while building the fastbind information, it will generate an error message and not mod- ify the executable file. When is invoked with option however, unresolved symbols are allowed. EXTERNAL INFLUENCES
Environment Variables The following internationalization variables affect the execution of Determines the locale category for native language, local customs and coded character set in the absence of and other environment variables. If is not specified or is set to the empty string, a default of (see lang(5)) is used instead of Determines the values for all locale categories and has precedence over and other environment variables. Determines the locale that should be used to affect the format and contents of diagnostic messages written to standard error. Determines the locale category for numeric formatting. Determines the locale category for character handling functions. Determines the location of message catalogs for the processing of If any internationalization variable contains an invalid setting, behaves as if all internationalization variables are set to See envi- ron(5). In addition, the following environment variable affects Specifies a directory for temporary files (see tmpnam(3S)). DIAGNOSTICS
returns zero when the operation is successful. A non-zero return code indicates that an error occurred. EXAMPLES
To run on the executable file enter: To later remove the fastbind information from the executable file enter: WARNINGS
32-bit PA-RISC does not work with EXEC_MAGIC executables. effectively enforces bind restricted and bind immediate. For example, consider an executable linked bind deferred, which calls a function foo() defined in an implicitly loaded library. Before the actual call is made, if it explicitly loads a shared library (using shl_load(3X) with having a definition for when is finally called, it will be resolved from the explicitly loaded library. But after running the symbol will be resolved from the implicitly loaded library. AUTHOR
was developed by Hewlett-Packard. FILES
output file 32-bit PA-RISC dynamic loader 32-bit Itanium-based dynamic loader 64-bit PA-RISC dynamic loader 64-bit Itanium-based dynamic loader message catalog temporary files SEE ALSO
System Tools ld(1) invoke the link editor Miscellaneous a.out(4) assembler, compiler, and linker output dld.sl(5) PA-RISC dynamic loader dld.so(5) Itanium-based dynamic loader Texts and Tutorials
Man Page