Skip to content

pg_config

pg_config — 检索有关已安装版本的PostgreSQL的信息

概要

pg_config[选项...]

说明

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

打印用于构建 PostgreSQLCC 变量的值。这将显示所使用的 C 编译器。

--cppflags

打印用于构建 PostgreSQLCPPFLAGS 变量的值。这将显示预处理时所需的 C 编译器开关(通常为 -I 开关)。

--cflags

打印用于构建 PostgreSQLCFLAGS 变量的值。这将显示 C 编译器开关。

--cflags_sl

打印用于构建 PostgreSQLCFLAGS_SL 变量的值。这将显示用于构建共享库的额外 C 编译器开关。

--ldflags

打印用于构建 PostgreSQLLDFLAGS 变量的值。这将显示链接器开关。

--ldflags_ex

打印用于构建 PostgreSQLLDFLAGS_EX 变量的值。这将显示仅用于构建可执行文件的链接器开关。

--ldflags_sl

打印用于构建 PostgreSQLLDFLAGS_SL 变量的值。这将显示仅用于构建共享库的链接器开关。

--libs

打印用于构建 PostgreSQLLIBS 变量的值。这通常包含链接到 PostgreSQL 的外部库的 -l 开关。

--version

打印 PostgreSQL 的版本。

-?
--help

显示有关 pg_config 命令行参数的帮助,然后退出。

如果给出了多个选项,则按该顺序打印信息,每行一个项目。如果未给出任何选项,则会打印所有可用信息,并带有标签。

备注

选项--docdir--pkgincludedir--localedir--mandir--sharedir--sysconfdir--cc--cppflags--cflags--cflags_sl--ldflags--ldflags_sl--libs在PostgreSQL8.1 中添加。选项--htmldir在PostgreSQL8.4 中添加。选项--ldflags_ex在PostgreSQL9.0 中添加。

示例

要重现当前 PostgreSQL 安装的构建配置,请运行以下命令

eval ./configure `pg_config --configure`

pg_config --configure的输出包含 shell 引号,因此带有空格的参数可以正确表示。因此,正确的结果需要使用eval