kextlibs man page on Darwin

Man page or keyword search:  
man Server   23457 pages
apropos Keyword Search (all sections)
Output format
Darwin logo
[printable version]

KEXTLIBS(8)		  BSD System Manager's Manual		   KEXTLIBS(8)

NAME
     kextlibs — find OSBundleLibraries needed by a kext

SYNOPSIS
     kextlibs [options] [--] kext ...

DESCRIPTION
     The kextlibs utility searches for library kexts that define symbols
     needed for linking by kext, printing their bundle identifiers and ver‐
     sions to stdout.  If the kext has a multiple-architecture executable,
     libraries are resolved for each architecture.  If any symbols are not
     found, or are found in multiple libraries, the numbers of such symbols
     are printed to standard error after the library kext information for each
     architecture.

     A handy use of kextlibs is to run it with just the -xml flag and pipe the
     output to pbcopy(1); if the exit status is zero (indicating no undefined
     or multiply-defined symbols), you can open your kext's Info.plist file in
     a text editor and paste the library declarations over the OSBundleLi‐
     braries property.

     You can use kextlibs to find libraries for older releases of Mac OS X
     using the -repository option to specify an extensions folder to search
     other than the extensions directories for the root volume (although
     releases prior to Mac OS X 10.6 (Snow Leopard) don't check for architec‐
     ture-specific properties, so be sure to check the output and edit as
     needed).  If you don't explicitly specify a repository directory,
     kextlibs searches the root volume's /System/Library/Extensions and
     /Library/Extensions directories.

OPTIONS
     -h, -help
	      Print a help message describing each option flag and exit with a
	      success result, regardless of any other options on the command
	      line.

     -all-symbols
	      Print reports on all symbols that remain undefined, all symbols
	      that have been resolved in one library kext each, and all sym‐
	      bols that have multiple definitions in different library kexts.
	      Equivalent to specifying all of -undef-symbols, -onedef-symbols,
	      and -multdef-symbols.  Normally only the number of missing and
	      duplicate symbols is printed.

     -c, -compatible-versions
	      Print the compatible version rather than the current version.

     -multdef-symbols
	      Print all undefined symbols from kext found in more than one
	      library kext, followed by those library kexts' bundle identi‐
	      fiers and versions (or compatible versions if
	      -compatible-versions was specified).  Normally only the number
	      of multiply-defined symbols is printed.

     -non-kpi
	      Search the compatibility kext, com.apple.kernel.6.0, rather than
	      any of the com.apple.kpi.* system kexts.	Use of this option is
	      not recommended: The exact kernel component (mach, bsd, libkern,
	      or iokit) cannot be determined, and the compatible version of
	      com.apple.kernel is locked to its current version, so kexts
	      linking against it can only load against that exact version.

     -onedef-symbols
	      Print all undefined symbols from kext found in exactly one
	      library kext, followed by that library kext's bundle identifier
	      and version (or compatible version if -compatible-versions was
	      specified).  Normally nothing is printed about symbols that are
	      found once.

     -r directory, -repository directory
	      Search directory for dependencies.  This option may be specified
	      multiple times.  You can use this to get library declarations
	      relative to a set of extensions other than those of the running
	      system (such as for a different release of Mac OS X), or to
	      include a side directory of library kexts.  Note: If you specify
	      a directory with this option, the system extensions folders are
	      not implicitly searched.	See -system-extensions.

     -e, -system-extensions
	      Add /System/Library/Extensions and /Library/Extensions to the
	      list of directories to search.  If you don't specify any direc‐
	      tories or kexts, this is used by default.

     -undef-symbols
	      Print all undefined symbols from kext that can't be found in any
	      library kexts.  Normally only the number of symbols not found is
	      printed.

     -unsupported
	      Search unsupported library kexts for symbols (by default they
	      are not searched).

     -v [0-6 | 0x####], -verbose [0-6 | 0x####]
	      Verbose mode; print information about program operation.	Higher
	      levels of verbosity include all lower levels.  You can specify a
	      level from 0-6, or a hexadecimal log specification (as described
	      in kext_logging(8)). For kextlibs, the decimal levels 1-6 gener‐
	      ally have little effect.

     -xml     Print an XML fragment to stdout suitable for copying and pasting
	      directly into an Info.plist file.	 This option prints informa‐
	      tion about libraries to stdout, and then prints information
	      about symbols to stderr. In XML mode, if the libraries for all
	      architectures are the same, only one set of OSBundleLibraries is
	      printed; if any differ from any others, architecture-specific
	      listings for all architectures are printed (OSBundleLi‐
	      braries_i386, OSBundleLibraries_x86_64, and so on).

     --	      End of options.

FILES
     /System/Library/Extensions/  The standard system repository of kernel
				  extensions.
     /Library/Extensions/	  The standard repository of non Apple kernel
				  extensions.

DIAGNOSTICS
     The kextlibs utility exits with a status of 0 on completion if all unde‐
     fined symbols are found exactly once; with a status of 1 if any undefined
     symbols remain, or with a status of 2 if any symbols are found in more
     than one library kext (whether or not any undefined symbols remain), and
     with another nonzero status on some other problem.

BUGS
     kextlibs uses a simple algorithm of string matching to resolve symbols,
     and does not apply any of the patching that the full link process does.
     This can cause it to fail when searching for symbols in a kext built
     against an SDK for a prior release of Mac OS X than the one on which
     kextlibs is being used.  In such cases, you can run kextlibs against the
     Extensions folder of that prior release using the -repository option.

     Many single-letter options are inconsistent in meaning with (or directly
     contradictory to) the same letter options in other kext tools.

SEE ALSO
     kextutil(8), kextfind(8), kext_logging(8)

Darwin			       November 14, 2012			Darwin
[top]

List of man pages available for Darwin

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net