.TH "revdep\-rebuild" "1" "" "gentoolkit" "" .SH "NAME" revdep\-rebuild \- Gentoo: Reverse Dependency Rebuilder .SH "SYNOPSIS" .B revdep\-rebuild [OPTIONS] [\-\-] [EMERGE OPTIONS] .SH "DESCRIPTION" revdep\-rebuild scans libraries and binaries for missing shared library dependencies and attempts to fix them by re\-emerging those broken binaries and shared libraries. It is useful when an upgraded package breaks other software packages that are dependent upon the upgraded package. .SH "OPTIONS" .TP .B \-C | \-\-nocolor Turn off colored output. (This option is also passed to portage.) .TP .B \-e | \-\-exact Emerge the most recent version of found packages, without regard to SLOT. .TP .B \-h | \-\-help Print usage. .TP .B \-i | \-\-ignore Delete temporary files from previous runs. .TP .B \-k | \-\-keep\-temp Force revdep\-rebuild not to delete temporary files after it successfully rebuilds packages. This option will NOT prevent revdep\-rebuild from deleting inconsistent or out\-of\-date temporary files. .TP .B \-\-library NAME | -L NAME Search for reverse dependencies for a particular library or group of libraries, rather than every library on the system. Emerge packages that use the named library. NAME can be a full path to a library or basic regular expression. (See regex(7).) .TP .B \-l | \-\-no\-ld\-path Do not set LD_LIBRARY_PATH. \fBNote:\fR Using this option will cause revdep-rebuild to report some false positives. .TP .B \-o | \-\-no-order Do not check the build order against the deep dependency list. This will make revdep-rebuild faster, but it can cause emerge failures. Please try revdep\-rebuild without \-o before reporting any bugs. .TP .B \-p | \-\-pretend Do a dry-run. Do not delete temporary files. (\-k \-p is redundant, but harmless.) \-\-pretend is assumed when not running revdep\-rebuild as root. .TP .B \-P | \-\-no\-progress Turn off the progress meter .TP .B \-q | \-\-quiet Print less output and disable the progress meter. (This option is also passed to portage.) .TP .B \-u UTIL | \-\-no-util UTIL Do not use features provided by UTIL. UTIL can be one of portage-utils or pkgcore, or it can be a \fBquoted\fR space-delimited list. .TP .B \-v | \-\-verbose More output. (Prints the revdep\-rebuild search environment.) .TP .B All other options (including unrecognized ones) are passed to the emerge command. Single\-letter options may not be combined, so for example, \-pv is not valid. Please use \-p \-v. .SH "CONFIGURATION" revdep\-rebuild no longer uses hardcoded paths. To change the default behavior the following variables can be changed by the user. LD_LIBRARY_MASK \- Mask of specially evaluated libraries .LP SEARCH_DIRS \- List of directories to search for executables and libraries .LP SEARCH_DIRS_MASK \- List of directories to not search You can prepend to these variables by setting the variable in your environment prior to execution, by placing an entry in /etc/make.conf, or by placing a file in /etc/revdep\-rebuild containing the appropriate variables. The variables are read and set in the following order: environment settings \- one time changes by user .br /etc/make.conf \- persistent changes by user .br /etc/revdep\-rebuild/* \- persistent changes by ebuild authors While a user can edit and modify the files in the /etc/revdep\-rebuild directory, please be aware that the /etc/revdep\-rebuild directory is not under configuration protection and files can be removed and/or overwritten by an ebuild. To change this add /etc/revdep\-rebuild to the CONFIG_PROTECT variable in /etc/make.conf. An entry of "\-*" means to clear the variable from that point forward. Example: SEARCH_DIRS="/usr/bin \-*" will set SEARCH_DIRS to contain only /usr/bin revdep\-rebuild honors the NOCOLOR and PORTAGE_NICENESS variables from /etc/make.conf .SH "EXAMPLES" It is recommended that when running revdep\-rebuild that the following command be used initially: .br \fBrevdep\-rebuild \-\-ignore \-\-pretend\fR To search the entire system, while excluding /mnt and /home: .br \fBenv SEARCH_DIRS="/ \-*" SEARCH_DIRS_MASK="/mnt /home" revdep\-rebuild\fR To rebuild packages that depend on libkdecore.so.4 from KDE 3.3: .br \fBrevdep\-rebuild \-\-library /usr/kde/3.3/lib/libkdecore.so.4\fR To rebuild packages that depend upon libImlib.so and libImlib2.so: .br \fBrevdep\-rebuild \-\-library libImlib[2]*.so.*\fR .SH "FILES" .P revdep\-rebuild keeps several pseudo-temporary files in /var/cache/revdep\-rebuild/. Deleting these files can improve accuracy at the cost of speed: .TP 15 .I 0_env.rr Contains environment variables .TP .I 1_files.rr Contains a list of files to search .TP .I 2_ldpath.rr Contains the LDPATH .TP .I 3_broken.rr Contains the list of broken files .TP .I 3_errors.rr Contains the ldd error output .TP .I 4_raw.rr Contains the raw list of packages .TP .I 4_owners.rr Contains the file owners .TP .I 4_pkgs.rr Contains the unsorted bare package names .TP .I 4_ebuilds.rr Contains the unsorted atoms .TP .I 5_order.rr Contains the sorted atoms .TP .I 6_status.rr Contains the ldd error output .SH "EXIT STATUS" revdep\-rebuild returns a zero exit status if it \fBand emerge\fR succeeds, and a nonzero exit status otherwise. .SH "BUGS" .LP Report bugs to . Please do not report emerge failures caused by \-o or \-e. Please include your .revdep\-rebuild* files, your emerge \-\-info, and patches. ;) .SH "SEE ALSO" emerge(1), portage(5), regex(7)