pg_config
pg_config — 获取已安装的 PostgreSQL 版本的信息
当前查看 PostgreSQL 18.6。
说明
pg_config — 获取已安装的 PostgreSQL 版本的信息
- 手册中的可执行程序
- pg_config
- 程序版本
- 18.6
- 参考清单
- 客户端程序
- 选项定义组
- 24
用法
pg_config [ option ...]手册中的选项
| 选项与参数 | 说明 |
|---|---|
| --bindir | 打印用户可执行文件所在的位置。例如,可用它来查找 psql 程序。通常这也是 pg_config 程序所在的位置。 |
| --docdir | 打印文档文件所在的位置。 |
| --htmldir | 打印 HTML 文档文件所在的位置。 |
| --includedir | 打印客户端接口的 C 头文件所在的位置。 |
| --pkgincludedir | 打印其他 C 头文件所在的位置。 |
| --includedir-server | 打印服务器编程所用 C 头文件所在的位置。 |
| --libdir | 打印目标代码库所在的位置。 |
| --pkglibdir | 打印动态可加载模块所在的位置,或服务器将搜索这些模块的位置。(其他与体系结构相关的数据文件也可能安装在该目录中。) |
| --localedir | 打印区域设置支持文件所在的位置。(如果在构建 PostgreSQL 时未配置区域设置支持,则这将是一个空字符串。) |
| --mandir | 打印手册页所在的位置。 |
| --sharedir | 打印与体系结构无关的支持文件所在的位置。 |
| --sysconfdir | 打印系统范围的配置文件所在的位置。 |
| --pgxs | 打印扩展 makefile 的位置。 |
| --configure | 打印为构建 PostgreSQL 而运行 configure 脚本时给定的选项。这可用于重现完全相同的配置,或者查明某个二进制软件包是用哪些选项构建的。(但请注意,二进制软件包通常包含供应商特定的自定义补丁。)另请参见下面的示例。 |
| --cc | 打印构建 PostgreSQL 时所用的 CC 变量值。这显示所使用的 C 编译器。 |
| --cppflags | 打印构建 PostgreSQL 时所用的 CPPFLAGS 变量值。这显示预处理阶段所需的 C 编译器开关(通常是 -I 开关)。 |
| --cflags | 打印构建 PostgreSQL 时所用的 CFLAGS 变量值。这显示 C 编译器开关。 |
| --cflags_sl | 打印构建 PostgreSQL 时所用的 CFLAGS_SL 变量值。这显示构建共享库时使用的额外 C 编译器开关。 |
| --ldflags | 打印构建 PostgreSQL 时所用的 LDFLAGS 变量值。这显示链接器开关。 |
| --ldflags_ex | 打印构建 PostgreSQL 时所用的 LDFLAGS_EX 变量值。这显示仅用于构建可执行文件的链接器开关。 |
| --ldflags_sl | 打印构建 PostgreSQL 时所用的 LDFLAGS_SL 变量值。这显示仅用于构建共享库的链接器开关。 |
| --libs | 打印构建 PostgreSQL 时所用的 LIBS 变量值。这通常包含外部库的 -l 开关,这些外部库会被链接进 PostgreSQL 。 |
| --version | 打印 PostgreSQL 的版本。 |
| -? --help | 显示有关 pg_config 命令行参数的帮助,然后退出。 |
手册定义
pg_config
pg_config — 获取已安装的PostgreSQL版本的信息
大纲
pg_config [option...]
说明
pg_config工具打印当前已安装的PostgreSQL版本的配置参数。例如,希望与PostgreSQL对接的软件包可以使用它,以便找到所需的头文件和库。
选项
要使用pg_config,请提供下列一个或多个选项:
--bindir-
打印用户可执行文件所在的位置。例如,可用它来查找
psql程序。通常这也是pg_config程序所在的位置。 --docdir-
打印文档文件所在的位置。
--htmldir-
打印 HTML 文档文件所在的位置。
--includedir-
打印客户端接口的 C 头文件所在的位置。
--pkgincludedir-
打印其他 C 头文件所在的位置。
--includedir-server-
打印服务器编程所用 C 头文件所在的位置。
--libdir-
打印目标代码库所在的位置。
--pkglibdir-
打印动态可加载模块所在的位置,或服务器将搜索这些模块的位置。(其他与体系结构相关的数据文件也可能安装在该目录中。)
--localedir-
打印区域设置支持文件所在的位置。(如果在构建PostgreSQL时未配置区域设置支持,则这将是一个空字符串。)
--mandir-
打印手册页所在的位置。
--sharedir-
打印与体系结构无关的支持文件所在的位置。
--sysconfdir-
打印系统范围的配置文件所在的位置。
--pgxs-
打印扩展 makefile 的位置。
--configure-
打印为构建PostgreSQL而运行
configure脚本时给定的选项。这可用于重现完全相同的配置,或者查明某个二进制软件包是用哪些选项构建的。(但请注意,二进制软件包通常包含供应商特定的自定义补丁。)另请参见下面的示例。 --cc-
打印构建PostgreSQL时所用的
CC变量值。这显示所使用的 C 编译器。 --cppflags-
打印构建PostgreSQL时所用的
CPPFLAGS变量值。这显示预处理阶段所需的 C 编译器开关(通常是-I开关)。 --cflags-
打印构建PostgreSQL时所用的
CFLAGS变量值。这显示 C 编译器开关。 --cflags_sl-
打印构建PostgreSQL时所用的
CFLAGS_SL变量值。这显示构建共享库时使用的额外 C 编译器开关。 --ldflags-
打印构建PostgreSQL时所用的
LDFLAGS变量值。这显示链接器开关。 --ldflags_ex-
打印构建PostgreSQL时所用的
LDFLAGS_EX变量值。这显示仅用于构建可执行文件的链接器开关。 --ldflags_sl-
打印构建PostgreSQL时所用的
LDFLAGS_SL变量值。这显示仅用于构建共享库的链接器开关。 --libs-
打印构建PostgreSQL时所用的
LIBS变量值。这通常包含外部库的-l开关,这些外部库会被链接进PostgreSQL。 --version-
打印PostgreSQL的版本。
-?--help-
显示有关pg_config命令行参数的帮助,然后退出。
如果给出了多个选项,信息会按给出的顺序输出,每行一项。如果未给出任何选项,则会输出所有可用信息,并带有标签。
注解
--docdir、--pkgincludedir、--localedir、--mandir、--sharedir、--sysconfdir、--cc、--cppflags、--cflags、--cflags_sl、--ldflags、--ldflags_sl 和 --libs 选项在 PostgreSQL 8.1 中添加。--htmldir 选项在 PostgreSQL 8.4 中添加。--ldflags_ex 选项在 PostgreSQL 9.0 中添加。
示例
要重现当前 PostgreSQL 安装的构建配置,请运行下列命令:
eval ./configure `pg_config --configure`
pg_config --configure的输出包含 shell 引号,因此带空格的参数能够被正确表示。因此,要得到正确的结果,需要使用eval。
文档与源码
来源构建
- 版本
- 18.6
- 构建
- https://ftp.postgresql.org/pub/source/v18.6/postgresql-18.6.tar.bz2
- 来源指纹
ee8d1a3612338fd9adf250730cb640fcc5233b5491337cc00a316a44e3a0b9f8
版本比较
PostgreSQL 17 → 18: 无变化。
比较已记录的接口与属性,排除来源指纹和构建元数据。某个样本中没有记录,不能据此判断实际引入或移除的版本。
相关条目
导出 JSON · 返回命令行工具 · 收录范围为 PostgreSQL 10 至 20;最早采样版本不一定是实际引入版本。