depmod program to generate modules.dep and map files.
depmod [-b basedir] [-e] [-F System.map] [-n] [-v] [version] [-A
depmod [-e] [-FSystem.map] [-n] [-v] [version] [filename ...]
Linux kernel modules can provide services (called "symbols") for other
modules to use (using EXPORT_SYMBOL in the code). If a second module
uses this symbol, that second module clearly depends on the first mod
ule. These dependencies can get quite complex.
depmod creates a list of module dependencies, by reading each module
under /lib/modules/version and determining what symbols it exports, and
what symbols it needs. By default this list is written to modules.dep
in the same directory. If filenames are given on the command line,
only those modules are examined (which is rarely useful, unless all
modules are listed).
If a version is provided, then that kernel versions module directory
is used, rather than the current kernel version (as returned by "uname
depmod will also generate various map files in this directory, for use
by the hotplug infrastructure.
-a --all Probe all modules. This option is enabled by default if no
file names are given in the command-line.
-b basedir --basedir basedir
If your modules are not currently in the (normal) directory
/lib/modules/version, but in a staging area, you can specify
a basedir which is prepended to the directory name. This
basedir is stripped from the resulting modules.dep file, so
it is ready to be moved into the normal location.
When combined with the -F option, this reports any symbols
which a module needs which are not supplied by other modules
or the kernel. Normally, any symbols not provided by modules
are assumed to be provided by the kernel (which should be
true in a perfect world).
-F --filesyms System.map
Supplied with the System.map produced when the kernel was
built, this allows the -e option to report unresolved sym
This sends the resulting modules.dep, then the various map
files, to standard output, rather than writing them into the
This option scans to see if any modules are newer the mod
ules.dep file before any work is done: if not, it silently
exits rather than regenerating the files.
In verbose mode depmod will print (to stdout) all the symbols
each module depends on and the modules file name which pro
vides that symbol.
Show version of program, and exit. See below for caveats when
run on older kernels.
-h --help Print the help message, and exit.
This version of depmod is for kernels 2.5.48 and above. If it detects
a kernel with support for old-style modules, or the version specified
is before 2.5.48, it will attempt to run depmod.modutils in its place,
so it is completely transparent to the user.
This manual page Copyright 2002, Rusty Russell, IBM Corporation.
modprobe(8), modules.dep(5), depmod.modutils(8)