|PKGCONF(1)||General Commands Manual||PKGCONF(1)|
pkgconf — a system
for configuring build dependency information
||[options] [list of modules]|
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
- Display the supported pkg-config version and exit.
- Exit with error if we do not support the requested pkg-config version.
- Print all errors on the main output stream instead of the error output stream.
- 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 state.
- 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 variables.
- Validate specific ‘.pc’ files for correctness.
- 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.
- Compute a simple dependency graph that is only suitable for shared linking.
- Treats the computed dependency graph as if it were pure. This is mainly
intended for use with the
- Ignore ‘Provides’ rules in modules when resolving dependencies.
- Adds a new module search path to pkgconf's dependency resolver. Paths added in this way are given preference before other paths.
- 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.
- Disables the ‘define-prefix’ feature.
- Sets the ‘prefix’ variable used by the ‘define-prefix’ feature.
- 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.
- Disables the path relocation feature.
- Exit with error if a module's version is less than the specified version.
- Exit with error if a module's version is not exactly the specified version.
- Exit with error if a module's version is greater than the specified version.
- Exit with a non-zero result if the dependency resolver was unable to find all of the requested modules.
- Exit with a non-zero result if the dependency resolver uses an ‘uninstalled’ module as part of its solution.
- Forbids the dependency resolver from considering 'uninstalled' modules as part of a solution.
- Display either all CFLAGS, only
-ICFLAGS or only CFLAGS that are not
- Display either all linker flags, only
-Llinker flags, only
-llinker 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 all relevant ‘Provides’ entries 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 interdependencies.
- Display the filenames of the ‘.pc’ files used by the dependency resolver for a given dependency set.
- Print the requested values as variable declarations in a similar format as the env(1) command.
- Filter the fragment lists for the specified types.
- Print the version of the queried module.
- List of secondary directories where ‘.pc’ files are looked up.
- List of primary directories where ‘.pc’ files are looked up.
- ‘sysroot’ directory, will be prepended to every path defined in PKG_CONFIG_PATH. Useful for cross compilation.
- Provides an alternative setting for the ‘pc_top_builddir’ global variable.
- If set, enables the same behaviour as the
- List of paths that are considered system include paths by the toolchain. This is a pkgconf-specific extension.
- List of paths that are considered system library paths by the toolchain. This is a pkgconf-specific extension.
- If set, enables the same behaviour as the
- ‘logfile’ which is used for dumping audit information concerning installed module versions.
- If set, enables additional debug logging. The format of the debug log messages is implementation-specific.
- If set, disables the path relocation feature.
- If set, uses MSVC syntax for fragments.
- If set, follow the sysroot prefixing rules that freedesktop.org pkg-config uses.
- If set to PKG_CONFIG_SYSROOT_DIR, assume that PKG_CONFIG_FDO_SYSROOT_RULES is set.
Displaying the CFLAGS of a package:
$ pkgconf --cflags foo
|November 15, 2016||Linux 5.14.21-150400.24.88-default|