英语法语西班牙语

Ad


OnWorks 网站图标

i686-w64-mingw32-pkg-config - 云端在线

在 OnWorks 免费托管服务提供商中通过 Ubuntu Online、Fedora Online、Windows 在线模拟器或 MAC OS 在线模拟器运行 i686-w64-mingw32-pkg-config

这是命令 i686-w64-mingw32-pkg-config 可以使用我们的多个免费在线工作站之一在 OnWorks 免费托管服务提供商中运行,例如 Ubuntu Online、Fedora Online、Windows 在线模拟器或 MAC OS 在线模拟器

程序:

您的姓名


pkg-config - 返回有关已安装库的元信息

概要


包配置 [--modversion] [--version] [--help] [--atleast-pkgconfig-version=版本]
[--打印错误] [--短错误] [--沉默错误] [--错误到标准输出] [--调试]
[--cflags] [--libs] [--libs-only-L] [--libs-only-l] [--cflags-only-I] [--libs-only-other]
[--cflags-only-other] [--variable=VARIABLENAME] [--define-
变量=VARIABLENAME=VARIABLEVALUE] [--print-variables] [--uninstalled] [--exists]
[--atleast-version=版本] [--exact-version=版本] [--max-version=版本] [--validate]
[--list-all] [--print-provides] [--print-requires] [--print-requires-private]
[图书馆...]

商品描述


包配置 程序用于检索有关已安装库的信息
系统。 它通常用于编译和链接一个或多个库。 这是
Makefile 中的典型使用场景:

程序:program.c
cc 程序.c $(pkg-config --cflags --libs gnomeui)

包配置 从特殊元数据文件中检索有关包的信息。 这些文件
以包命名,并有一个 。个人电脑 延期。 在大多数系统上, 包配置 容貌
in /usr/lib/pkgconfig, /usr/共享/pkgconfig, /usr/本地/lib/pkgconfig
/usr/本地/共享/pkgconfig 对于这些文件。 它还会在冒号中查看-
由指定的目录的分隔(在 Windows 上,分号分隔)列表
PKG_CONFIG_PATH 环境变量。

上指定的包名称 包配置 命令行被定义为
元数据文件,减去 。个人电脑 延期。 如果一个库可以安装多个版本
同时,它必须给每个版本一个自己的名字(例如,GTK 1.2 可能有
包名“gtk+”,而 GTK 2.0 有“gtk+-2.0”)。

除了在命令行上指定包名外,指定的完整路径 。个人电脑
文件可以代替。 这允许用户直接查询特定的 。个人电脑 文件中。

配置


支持以下选项:

--修改版本
请求命令中指定的库的版本信息
行显示。 如果 包配置 可以在命令行上找到所有的库,
每个库的版本字符串都打印到标准输出,每行一个版本。 在这
案件 包配置 成功退出。 如果一个或多个库未知, 包配置
以非零代码退出,并且 stdout 的内容未定义。

- 版
显示版本 包配置 并终止。

--至少-pkgconfig-version=版本
至少需要给定版本的 pkg-config。

- 帮帮我 显示帮助消息并终止。

--打印错误
如果命令行中的一个或多个模块或其依赖项未
找到,或者如果在解析一个错误 。个人电脑 文件,则此选项将导致
解释要打印的问题的错误。 使用“谓词”选项,例如
“——存在” 包配置 默认情况下静默运行,因为它通常用于
想要控制输出的脚本。 此选项可以单独使用(仅
在命令行上定位模块时遇到打印错误)或其他
选项。 PKG_CONFIG_DEBUG_SPEW 环境变量覆盖此选项。

--短错误
打印简短的错误消息。

--沉默错误
如果命令行中的一个或多个模块或其依赖项未
找到,或者如果解析 aa 时发生错误 。个人电脑 文件,则此选项将保留
错误解释了被打印的问题。 使用“谓词”选项,例如
“——存在” 包配置 默认情况下静默运行,因为它通常用于
想要控制输出的脚本。 所以这个选项只对
默认情况下打印错误的选项,例如“--cflags”或“--modversion”。 这
PKG_CONFIG_DEBUG_SPEW 环境变量覆盖此选项。

--错误到标准输出
如果打印错误,将它们打印到 stdout 而不是默认的 stderr

-调试
打印调试信息。 这与之前的略有不同
PKG_CONFIG_DEBUG_SPEW 环境变量,也启用“--print-errors”。

以下选项用于编译和链接程序:

--cflags
这将打印编译包所需的预处理器和编译标志
命令行,包括所有依赖项的标志。 标志被“压缩”所以
每个相同的标志只出现一次。 包配置 以非零代码退出如果
它无法在命令行上找到一个或多个包的元数据。

--cflags-only-I
这将打印“--cflags”的 -I 部分。 也就是说,它定义了头部搜索路径
但没有指定任何其他内容。

--cflags-only-其他
这将打印“--cflags-only-I”未涵盖的“--cflags”部分。

--库 此选项与“--cflags”相同,只是它打印链接标志。 与
“--cflags”,重复的标志被合并(保持正确的顺序),和标志
依赖项包含在输出中。

--仅库-L
这将打印“--libs”的 -L/-R 部分。 也就是说,它定义了库搜索路径
但没有指定要链接的库。

--仅库-l
这会为命令中指定的库打印“--libs”的 -l 部分
线。 请注意,“--libs-only-l”和“--libs-only-L”的并集可能更小
由于诸如 -rdynamic 之类的标志,而不是“--libs”。

--仅库-其他
这将打印“--libs-only-L”和“--libs-only-”未涵盖的“--libs”部分
l”,例如“--pthread”。

--variable=变量名
这将返回包中定义的变量的值 。个人电脑 文件。 大多数套餐
例如,定义变量“前缀”,因此您可以说:
$ pkg-config --variable=前缀 glib-2.0
/用户名/

--define-variable=变量名称=变量值
这会为变量设置一个全局值,覆盖任何 。个人电脑 文件。
例如,大多数包定义了变量“前缀”,因此您可以说:
$ pkg-config --print-errors --define-variable=前缀=/foo \
--variable=前缀 glib-2.0
/富

--打印变量
返回包中定义的所有变量的列表。

--已卸载
通常,如果您请求包“foo”并且包“foo-uninstalled”存在,
包配置 将更喜欢“-uninstalled”变体。 这允许编译/链接
针对已卸载的软件包。 如果您指定“--uninstalled”选项, 包配置
如果正在使用任何“-uninstalled”软件包,将成功返回,并返回
否则失败(假)。 (PKG_CONFIG_DISABLE_UNINSTALLED 环境
变量保持 包配置 从隐式选择“-uninstalled”包,所以如果
该变量已设置,只有在您传递诸如“foo-”之类的名称时才会使用它们
已卸载”在命令行上明确显示。)

--存在

--至少版本=版本

--exact-version=版本

--max-version=版本
这些选项测试命令行上的包或包列表是否是
已知 包配置,以及可选的包版本号是否满足
某些限制。 如果所有包都存在并且满足指定的版本
约束, 包配置 成功退出。 否则退出不成功。 仅有的
第一个版本比较选项将被尊重。 此类型的后续选项
将被忽略。

您可以简单地提供一个版本,而不是使用版本测试选项
每个包名后的约束,例如:
$ pkg-config --exists 'glib-2.0 >= 1.3.4 libxml = 1.8.3'
如果您需要错误消息,请记住使用 --print-errors。 当没有输出选项时
提供给 包配置, --exists 是隐含的。

- 证实
检查包的语法 。个人电脑 文件的有效性。 这与
-- 存在,但未验证依赖项。 这对于打包很有用
开发人员测试他们的 。个人电脑 发布前的文件:
$ pkg-config --validate ./my-package.pc

--msvc-语法
此选项仅在 Windows 上可用。 它导致 包配置 输出 -l 和 -L
Microsoft Visual C++ 命令行编译器识别形式的标志, cl.
具体来说,而不是 -Lx:/某些/路径 它打印 /libpath:x/一些/路径, 而不是
of -lfoo 它打印 文件库. 请注意,--libs 输出包含用于
链接器,并且应该放在 cl 命令行上的 /link 开关之后。

--定义前缀
--不定义前缀
这些选项控制是否 包配置 覆盖变量的值 字首
在每个 .pc 文件中。 使用 --define-prefix, 包配置 使用安装位置
.pc 文件来确定前缀。 --dont-define-prefix 防止这种行为。
默认值通常是 --define-prefix。

启用此功能并在名为的目录中找到 .pc 文件时
配置文件,该包的前缀被假定为
找到文件的目录,以及 字首 变量为此被覆盖
相应地归档。

如果 .pc 文件中变量的值以原始的、未覆盖的值开头,
的价值 字首 变量,然后是覆盖的值 字首 改为使用。
这允许该功能即使在变量已在
.pc 文件。

--prefix-variable=前缀
设置变量的名称 包配置 覆盖而不是 字首 使用时
--define-prefix 功能。

- 静止的
适用于静态链接的输出库。 这意味着包括任何私人
输出中的库。 这依赖于 .pc 文件中的正确标记,否则
通常会输出过多的库。

--列出全部
列出在 包配置 路径。

--打印-提供
列出给定包提供的所有模块。

--打印要求
列出给定包需要的所有模块。

--打印需要私有
列出给定包静态链接所需的所有模块(请参阅--static)。

环境 变数


PKG_CONFIG_PATH
要搜索的以冒号分隔的目录列表(在 Windows 上,以分号分隔)
对于 .pc 文件。 搜索后将始终搜索默认目录
小路; 默认是 库目录/包配置:数据目录/pkgconfig 在哪里 库目录 是 libdir
包配置数据目录 是数据目录 包配置 安装时。

PKG_CONFIG_DEBUG_SPEW
如果设置,则导致 包配置 打印各种调试信息和报告
所有错误。

PKG_CONFIG_TOP_BUILD_DIR
为魔法变量设置的值 pc_top_builddir 这可能出现在 。个人电脑
文件。 如果没有设置环境变量,默认值 '$(top_builddir)'
将会被使用。 这个变量应该指向 Makefile 的顶层构建目录,其中
报告的编译/链接标志 包配置 将会被使用。 这仅在
针对尚未安装的包编译/链接。

PKG_CONFIG_DISABLE_UNINSTALLED
通常,如果您请求包“foo”并且包“foo-uninstalled”存在,
包配置 将更喜欢“-uninstalled”变体。 这允许编译/链接
针对已卸载的软件包。 如果设置了此环境变量,它将禁用
说的行为。

PKG_CONFIG_ALLOW_SYSTEM_CFLAGS
不要从 cflags 中删除 -I/usr/include。

PKG_CONFIG_ALLOW_SYSTEM_LIBS
不要从库中删除 -L/usr/lib 或 -L/lib。

PKG_CONFIG_SYSROOT_DIR
修改 -I 和 -L 以使用位于目标 sysroot 中的目录。 这个选项是
在交叉编译使用 pkg-config 来确定 CFLAGS 和
LDFLAGS。 -I 和 -L 被修改为指向新的系统根。 这意味着一个
-I/usr/include/libfoo 将变成 -I/var/target/usr/include/libfoo 并带有
PKG_CONFIG_SYSROOT_DIR 等于 /var/target(同样的规则适用于 -L)

PKG_CONFIG_LIBDIR
替换默认值 包配置 搜索目录,通常
/usr/lib/pkgconfig:/usr/共享/pkgconfig.

PKG_CONFIG_$PACKAGE_$VARIABLE
覆盖包 PACKAGE 中的变量 VARIABLE。 环境变量
包名和包变量应该用非字母数字大写
字符转换为下划线。 例如,设置
PKG_CONFIG_GLADEUI_2_0_CATALOGDIR 将覆盖变量“catalogdir”
“gladeui-2.0”包。

配置文件 衍生的 变数


包配置 设置一些可以在 .pc 文件中使用或查询的元数据变量
运行。

电脑路径
使用的默认搜索路径 包配置 搜索 .pc 文件时。 这个可以
用于查询 包配置 模块本身:
$ pkg-config --变量 pc_path pkg-config

电脑文件目录
.pc 文件的安装位置。 这可用于查询位置
特定模块的 .pc 文件,但它也可用于制作 .pc 文件
可搬迁。 例如:
前缀=${pcfiledir}/../..
exec_prefix=${前缀}
libdir=${exec_prefix}/ lib目录
includeir=${prefix}/include

pc_sysroot目录
用户设置的 sysroot 目录。 当 sysroot 目录尚未设置时,
这个值是 /。 请参阅 PKG_CONFIG_SYSROOT_DIR 更多环境变量
细节。

pc_top_builddir
调用时用户的顶级构建目录的位置 pkg 配置。 这很有用
在卸载的 .pc 文件中动态设置路径。 见 PKG_CONFIG_TOP_BUILD_DIR
环境变量以获取更多详细信息。

视窗 特产


包配置 Windows 上将忽略默认搜索路径。 相反,搜索路径是
使用安装目录构建 包配置 然后附加
库\pkgconfig共享\pkgconfig. 这可以使用标准来增加或替换
上面描述的环境变量。

自动配置


PKG_CHECK_MODULES(变量前缀, 课程结构 [,Action-IF-Found [,如果未找到则采取行动]])

宏 PKG_CHECK_MODULES 可用于 配置文件 检查模块是否
存在。 一个典型的用法是:
PKG_CHECK_MODULES([MYSTUFF], [gtk+-2.0 >= 1.3.5 libxml = 1.8.4])

这将导致 MYSTUFF_LIBS 和 MYSTUFF_CFLAGS 替换变量设置为
给定模块列表的库和 cflags。 如果模块丢失或具有
错误的版本,默认情况下配置将中止并显示一条消息。 更换
默认操作,指定一个 ACTION-IF-NOT-FOUND。 PKG_CHECK_MODULES 不会打印
如果您指定自己的 ACTION-IF-NOT-FOUND,则会出现任何错误消息。 然而,它会
设置变量 MYSTUFF_PKG_ERRORS,您可以使用它来显示出错的地方。

请注意,如果有可能第一次调用 PKG_CHECK_MODULES 可能不会
发生时,您应该确保包含对 PKG_PROG_PKG_CONFIG 的显式调用
你的configure.ac。

另请注意,不建议重复使用 VARIABLE-PREFIX。 之后
第一次成功使用,具有相同 VARIABLE-PREFIX 的后续调用将简单地
使用从以前的用法设置的 _LIBS 和 _CFLAGS 变量而不调用
包配置 一次。

PKG_PREREQ(最小版本)
检查正在使用的 pkg-config autoconf 宏的版本是否至少为 MIN-
版本。 这可用于确保特定的 pkg-config 宏将被
可用。

PKG_PROG_PKG_CONFIG([最小版本])

将 PKG_CONFIG 变量定义为可用的最佳 pkg-config,如果您
需要 pkg-config 但不想使用 PKG_CHECK_MODULES。

PKG_CHECK_MODULES_STATIC(变量前缀, 课程结构 [,Action-IF-Found [,Action-IF-NOT-
成立]])
在调用 PKG_CHECK_MODULES 之前通过 --static 启用静态链接。

PKG_CHECK_EXISTS(模块, [如果找到就采取行动], [如果未找到则采取行动])

检查是否存在一组特定的模块。 相似
PKG_CHECK_MODULES(),但不设置变量或打印错误。

与 PKG_CHECK_MODULES 类似,请确保此或
PKG_CHECK_MODULES 被调用,或者确保手动调用 PKG_CHECK_EXISTS。

PKG_INSTALLDIR(目录)

将变量 pkgconfigdir 替换为模块应安装的位置
pkg-config .pc 文件。 默认目录是 $libdir/pkgconfig,但是
可以通过传递 DIRECTORY 来更改默认值。 用户可以通过
--with-pkgconfigdir 参数。

PKG_NOARCH_INSTALLDIR(目录)

将变量 noarch_pkgconfigdir 替换为模块应该放置的位置
安装与 arch 无关的 pkg-config .pc 文件。 默认目录是
$datadir/pkgconfig,但可以通过传递 DIRECTORY 来更改默认值。 用户
可以通过 --with-noarch-pkgconfigdir 参数覆盖。

PKG_CHECK_VAR(变量, 模块, 配置变量, [如果找到就采取行动], [如果未找到则采取行动])

从 MODULE 和检索 pkg-config 变量 CONFIG-VARIABLE 的值
将其存储在 VARIABLE 中。 请注意,不建议重复使用 VARIABLE 作为
如果变量已经设置,将跳过检查。

元数据 文件 句法


将库添加到包集中 包配置 知道,只需安装一个 。个人电脑 文件中。
你应该安装这个文件到 库目录/pkg 配置。

这是一个示例文件:
#这是一条评论
prefix=/home/hp/unst # 这里定义了一个变量
exec_prefix=${prefix} # 根据第一个定义另一个变量
libdir=${exec_prefix}/ lib目录
includeir=${prefix}/include

名称:GObject # 人类可读的名称
描述:GLib 的对象/类型系统 # 人类可读的描述
版本:1.3.1
网址: http://www.gtk.org
要求:glib-2.0 = 1.3.1
冲突:foobar <= 4.5
库:-L${libdir} -lgobject-1.3
Libs.private:-lm
标志:-I${includedir}/glib-2.0 -I${libdir}/glib/include

您通常会使用配置生成文件,以便将前缀等设置为
适当的值。 GNU Autoconf 手册建议在以下位置生成 .pc 文件之类的文件
构建时间而不是配置时间,因此何时构建 .pc 文件是一种品味问题
和偏好。

文件有两种行:关键字行以关键字加冒号开头,和
变量定义以字母数字字符串加等号开头。 关键字是
预先定义并具有特殊意义 包配置; 变量没有,你可以有
您希望的任何变量(但是,用户可能希望检索通常的目录
名称变量)。

注意变量引用写成“${foo}”; 您可以将文字“${”转义为“$${”。

名称: 该字段应该是包的可读名称。 请注意,它不是
名称作为参数传递给 包配置.

描述:
这应该是包的简要说明

网址: 人们可以在其中获取有关软件包的更多信息并下载软件包的 URL

版本:
这应该是最具体的可能的包版本字符串。

要求:
这是您的包所需的包的逗号分隔列表。 旗帜
from 依赖包将合并到为您的包报告的标志中。
或者,您可以指定所需软件包的版本(使用
运算符 =、<、>、>=、<=); 指定版本允许 包配置 执行额外的
健全性检查。 您只能在同一包裹上提及一次 要求:
线。 如果未指定包的版本,则将使用任何版本,不带
检查。

需要.私有:
此包所需的包列表。 区别于 要求
下面列出的包 需要.private 标志时不考虑
列表是为动态链接的可执行文件计算的(即,当 --static 不是
指定的)。 在每个.pc文件对应一个库的情况下,
需要.private 应专门用于指定之间的依赖关系
库。

冲突:
此可选行允许 包配置 执行额外的健全性检查,主要是
检测损坏的用户安装。 语法与 要求:
您可以在这里多次列出相同的包,例如“foobar =
1.2.3, foobar = 1.2.5, foobar >= 1.3", 如果你有理由这样做。如果一个版本
未指定,则您的包与上述所有版本发生冲突
包裹。 如果用户尝试同时使用您的包和有冲突的包
时间,然后 包配置 会抱怨。

库: 此行应提供特定于您的包的链接标志。 不要添加任何标志
对于所需的包; 包配置 将自动添加这些。

Libs.private:
此行应列出正在使用的所有私有库。 私人图书馆是
未通过您的库公开但在以下情况下需要的库
静态链接。 这不同于 需要.private 因为它引用了库
没有安装包文件。

标志:
此行应列出特定于您的包的编译标志。 不要添加任何
所需包的标志; 包配置 将自动添加这些。

使用 onworks.net 服务在线使用 i686-w64-mingw32-pkg-config


免费服务器和工作站

下载 Windows 和 Linux 应用程序

  • 1
    移相器
    移相器
    Phaser 是一个快速、免费且有趣的开放式
    源 HTML5 游戏框架,提供
    WebGL 和 Canvas 渲染
    桌面和移动网络浏览器。 游戏
    可以共...
    下载移相器
  • 2
    附庸引擎
    附庸引擎
    VASSAL 是一个游戏引擎,用于创建
    电子版传统板
    和纸牌游戏。 它提供支持
    游戏块渲染和交互,
    和...
    下载 VASSAL 引擎
  • 3
    OpenPDF - iText 的分支
    OpenPDF - iText 的分支
    OpenPDF 是一个 Java 库,用于创建
    以及使用 LGPL 编辑 PDF 文件和
    MPL 开源许可证。 OpenPDF 是
    iText 的 LGPL/MPL 开源继承者,
    一个...
    下载 OpenPDF - iText 的分支
  • 4
    SAGA GIS
    SAGA GIS
    SAGA - 自动化系统
    地球科学分析 - 是地理
    信息系统 (GIS) 软件
    地理数据的强大功能
    加工和分析...
    下载 SAGA GIS
  • 5
    Java/JTOpen 工具箱
    Java/JTOpen 工具箱
    IBM Toolbox for Java / JTOpen 是一个
    Java类库支持
    客户端/服务器和互联网编程
    模型到运行 OS/400 的系统,
    i5/OS, 哦...
    下载 Java/JTOpen 工具箱
  • 6
    D3.js
    D3.js
    D3.js(或数据驱动文档的 D3)
    是一个 JavaScript 库,它允许你
    生成动态的交互式数据
    Web 浏览器中的可视化。 与D3
    您...
    下载 D3.js
  • 更多 ”

Linux 命令

Ad