a system for configuring build dependency information
|[options] [list of
pkgconf is a program which helps to configure compiler
and linker flags for development frameworks. This allows build systems to
detect other dependencies and use them with the system toolchain.
- Display the supported pkg-config version and exit.
- Exit with error if we do not support the requested pkg-config
- Print all errors on the main output stream instead of the error output
- Do not display any errors at all.
- Walk all directories listed in the PKG_CONFIG_PATH
environmental variable and display information on packages which have
registered information there.
- Simulates resolving a dependency graph based on the requested modules on
the command line. Dumps a series of trees denoting pkgconf's resolver
- Skip caching packages when they are loaded into the internal resolver.
This may result in an alternate dependency graph being computed.
- Ignore ‘Conflicts’ rules in modules.
- Learn about pkgconf's configuration strictly from environmental
- 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 solution.
- Compute a deeper dependency graph and use compiler/linker flags intended
for static linking.
- Exit with error if a module's version is less than the specified
- Exit with error if a module's version is not exactly the specified
- Exit with error if a module's version is greater than the specified
- Exit with a non-zero result if the dependency resolver was able to find
all of the requested modules.
- Exit with a non-zero result if the dependency resolver uses an
‘uninstalled’ module as part of it's solution.
- Forbids the dependency resolver from considering 'uninstalled' modules as
part of a solution.
- Display either all CFLAGS, only
-I CFLAGS or only
CFLAGS that are not
- Display either all linker flags, only
-l linker flags or only linker flags
that are not
- Keep CFLAGS or linker flag fragments that would be filtered due to being
included by default in the compiler.
- 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 all seen variables for a module to the output channel.
- Print the value of VARNAME.
- Print the modules included in either the Requires
field or the Requires.private field.
- Dump the dependency resolver's solution as a graphviz ‘dot’
file. This can be used with graphviz to visualize module
- List of directories where ‘.pc’ files are looked up.
- ‘sysroot’ directory, will be prepended to every path defined
in PKG_CONFIG_PATH. Useful for cross
Displaying the CFLAGS of a package:
$ pkgconf --cflags foo