dwww Home | Manual pages | Find package

PKGCONF(1)                   General Commands Manual                 PKGCONF(1)

NAME
       pkgconf — a system for configuring build dependency information

SYNOPSIS
       pkgconf [options] [list of modules]

DESCRIPTION
       pkgconf  is a program which helps to configure compiler and linker flags
       for development libraries.  This allows build systems  to  detect  other
       dependencies and use them with the system toolchain.

GENERAL OPTIONS
       --version
               Display the supported pkg-config version and exit.

       --atleast-pkgconfig-version=VERSION
               Exit  with  error  if we do not support the requested pkg-config
               version.

       --errors-to-stdout
               Print all errors on the main output stream instead of the  error
               output stream.

       --silence-errors
               Do not display any errors at all.

       --list-all
               Walk all directories listed in the PKG_CONFIG_PATH environmental
               variable  and  display information on packages which have regis-
               tered information there.

       --simulate
               Simulates resolving a dependency graph based  on  the  requested
               modules  on  the command line.  Dumps a series of trees denoting
               pkgconf's resolver state.

       --no-cache
               Skip caching packages when they are loaded into the internal re-
               solver.  This may result in an alternate dependency graph  being
               computed.

       --ignore-conflicts
               Ignore ‘Conflicts’ rules in modules.

       --env-only
               Learn  about pkgconf's configuration strictly from environmental
               variables.

       --validate package ...
               Validate specific ‘.pc’ files for correctness.

       --maximum-traverse-depth=DEPTH
               Impose a limit on the allowed depth  in  the  dependency  graph.
               For example, a depth of 2 will restrict the resolver from acting
               on  child  dependencies of modules added to the resolver's solu-
               tion.

       --static
               Compute a deeper dependency graph and use compiler/linker  flags
               intended for static linking.

       --shared
               Compute  a  simple  dependency  graph  that is only suitable for
               shared linking.

       --pure  Treats the computed dependency graph as if it were  pure.   This
               is mainly intended for use with the --static flag.

       --no-provides
               Ignore ‘Provides’ rules in modules when resolving dependencies.

       --with-path=PATH
               Adds  a new module search path to pkgconf's dependency resolver.
               Paths added in this way are given preference before other paths.

       --define-prefix
               Attempts to determine the prefix variable to use for CFLAGS  and
               LIBS  entry  relocations.   This  is mainly useful for platforms
               where framework SDKs are relocatable, such as Windows.

       --dont-define-prefix
               Disables the ‘define-prefix’ feature.

       --prefix-variable=VARIABLE
               Sets the ‘prefix’ variable used by the ‘define-prefix’ feature.

       --relocate=PATH
               Relocates a path using the pkgconf_path_relocate API.   This  is
               mainly  used  by the testsuite to provide a guaranteed interface
               to the system's path relocation backend.

       --dont-relocate-paths
               Disables the path relocation feature.

MODULE-SPECIFIC OPTIONS
       --atleast-version=VERSION
               Exit with error if a module's version is less than the specified
               version.

       --exact-version=VERSION
               Exit with error if a module's version is not exactly the  speci-
               fied version.

       --max-version=VERSION
               Exit with error if a module's version is greater than the speci-
               fied version.

       --exists
               Exit  with  a non-zero result if the dependency resolver was un-
               able to find all of the requested modules.

       --uninstalled
               Exit with a non-zero result if the dependency resolver  uses  an
               ‘uninstalled’ module as part of its solution.

       --no-uninstalled
               Forbids  the  dependency resolver from considering 'uninstalled'
               modules as part of a solution.

QUERY-SPECIFIC OPTIONS
       --cflags, --cflags-only-I, --cflags-only-other
               Display either all CFLAGS, only -I CFLAGS or  only  CFLAGS  that
               are not -I.

       --libs, --libs-only-L, --libs-only-l, --libs-only-other
               Display  either  all linker flags, only -L linker flags, only -l
               linker flags or only linker flags that are not -L or -l.

       --keep-system-cflags, --keep-system-libs
               Keep CFLAGS or linker flag fragments that would be filtered  due
               to being included by default in the compiler.

       --define-variable=VARNAME=VALUE
               Define  VARNAME  as  VALUE.  Variables are used in query output,
               and some modules' results may change based on the presence of  a
               variable definition.

       --print-variables
               Print all seen variables for a module to the output channel.

       --print-provides
               Print all relevant ‘Provides’ entries for a module to the output
               channel.

       --variable=VARNAME
               Print the value of VARNAME.

       --print-requires, --print-requires-private
               Print  the  modules included in either the Requires field or the
               Requires.private field.

       --digraph
               Dump the dependency resolver's  solution  as  a  graphviz  ‘dot’
               file.  This can be used with graphviz to visualize module inter-
               dependencies.

       --path  Display  the filenames of the ‘.pc’ files used by the dependency
               resolver for a given dependency set.

       --env=VARNAME
               Print the requested values as variable declarations in a similar
               format as the env(1) command.

       --fragment-filter=TYPES
               Filter the fragment lists for the specified types.

       --modversion
               Print the version of the queried module.

ENVIRONMENT
       PKG_CONFIG_PATH
               List of secondary directories where ‘.pc’ files are looked up.

       PKG_CONFIG_LIBDIR
               List of primary directories where ‘.pc’ files are looked up.

       PKG_CONFIG_SYSROOT_DIR
               ‘sysroot’ directory, will be prepended to every path defined  in
               PKG_CONFIG_PATH.  Useful for cross compilation.

       PKG_CONFIG_TOP_BUILD_DIR
               Provides an alternative setting for the ‘pc_top_builddir’ global
               variable.

       PKG_CONFIG_PURE_DEPGRAPH
               If set, enables the same behaviour as the --pure flag.

       PKG_CONFIG_SYSTEM_INCLUDE_PATH
               List  of  paths  that are considered system include paths by the
               toolchain.  This is a pkgconf-specific extension.

       PKG_CONFIG_SYSTEM_LIBRARY_PATH
               List of paths that are considered system library  paths  by  the
               toolchain.  This is a pkgconf-specific extension.

       PKG_CONFIG_DISABLE_UNINSTALLED
               If set, enables the same behaviour as the --no-uninstalled flag.

       PKG_CONFIG_LOG
               ‘logfile’ which is used for dumping audit information concerning
               installed module versions.

       PKG_CONFIG_DEBUG_SPEW
               If set, enables additional debug logging.  The format of the de-
               bug log messages is implementation-specific.

       PKG_CONFIG_DONT_RELOCATE_PATHS
               If set, disables the path relocation feature.

       PKG_CONFIG_MSVC_SYNTAX
               If set, uses MSVC syntax for fragments.

       PKG_CONFIG_FDO_SYSROOT_RULES
               If  set, follow the sysroot prefixing rules that freedesktop.org
               pkg-config uses.

       DESTDIR
               If  set  to   PKG_CONFIG_SYSROOT_DIR,   assume   that   PKG_CON-
               FIG_FDO_SYSROOT_RULES is set.

EXAMPLES
       Displaying the CFLAGS of a package:
             $ pkgconf --cflags foo
             -fPIC -I/usr/include/foo

SEE ALSO
       pc(5), pkg.m4(7)

Debian                         November 15, 2016                     PKGCONF(1)

Generated by dwww version 1.16 on Sat Oct 3 06:46:38 CEST 2026.