Manual: revdep-rebuild(1)
Updated:NAME
revdep-rebuild - Gentoo: Reverse Dependency RebuilderSYNOPSIS
revdep-rebuild [OPTIONS] [--] [EMERGE OPTIONS]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.OPTIONS
- -C | --nocolor
- Turn off colored output. (This option is also passed to portage.)
- -e | --exact
- Emerge the most recent version of found packages, without regard to SLOT.
- -h | --help
- Print usage.
- -i | --ignore
- Delete temporary files from previous runs.
- -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.
- --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).)
- -l | --no-ld-path
- Do not set LD_LIBRARY_PATH. Note: Using this option will cause revdep-rebuild to report some false positives.
- -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.
- -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.
- -P | --no-progress
- Turn off the progress meter
- -q | --quiet
- Print less output and disable the progress meter. (This option is also passed to portage.)
- -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 quoted space-delimited list.
- -v | --verbose
- More output. (Prints the revdep-rebuild search environment.)
- 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.
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
SEARCH_DIRS - List of directories to search for executables and libraries
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
/etc/make.conf - persistent changes by user
/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
EXAMPLES
It is recommended that when running revdep-rebuild that the following command be used initially:revdep-rebuild --ignore --pretend
To search the entire system, while excluding /mnt and /home:
env SEARCH_DIRS="/ -*" SEARCH_DIRS_MASK="/mnt /home" revdep-rebuild
To rebuild packages that depend on libkdecore.so.4 from KDE 3.3:
revdep-rebuild --library /usr/kde/3.3/lib/libkdecore.so.4
To rebuild packages that depend upon libImlib.so and libImlib2.so:
revdep-rebuild --library libImlib[2]*.so.*
FILES
revdep-rebuild keeps several pseudo-temporary files in /var/cache/revdep-rebuild/. Deleting these files can improve accuracy at the cost of speed:- 0_env.rr
- Contains environment variables
- 1_files.rr
- Contains a list of files to search
- 2_ldpath.rr
- Contains the LDPATH
- 3_broken.rr
- Contains the list of broken files
- 3_errors.rr
- Contains the ldd error output
- 4_raw.rr
- Contains the raw list of packages
- 4_owners.rr
- Contains the file owners
- 4_pkgs.rr
- Contains the unsorted bare package names
- 4_ebuilds.rr
- Contains the unsorted atoms
- 5_order.rr
- Contains the sorted atoms
- 6_status.rr
-
Contains the ldd error output
EXIT STATUS
revdep-rebuild returns a zero exit status if it and emerge succeeds, and a nonzero exit status otherwise.BUGS
Report bugs to <http://bugs.gentoo.org>. Please do not report emerge failures caused by -o or -e. Please include your files from /var/cache/revdep-rebuild/, your emerge --info, and patches. ;)
SEE ALSO
emerge(1), portage(5), regex(7)