On this page
pg_config
pg_config —检索有关已安装的 PostgreSQL 版本的信息
Synopsis
pg_config [ option ...]
Description
pg_configUtil 显示当前安装的 PostgreSQL 版本的配置参数。例如,它打算由希望与 PostgreSQL 接口的软件包使用,以帮助查找所需的头文件和库。
Options
要使用 pg_config,请提供以下一个或多个选项:
--bindir- 打印用户可执行文件的位置。例如,使用它来查找
psql程序。通常,这也是pg_config程序所在的位置。
- 打印用户可执行文件的位置。例如,使用它来查找
--docdir- 打印文档文件的位置。
--htmldir- 打印 HTML 文档文件的位置。
--includedir- 打印 Client 端接口的 C 头文件的位置。
--pkgincludedir- 打印其他 C 头文件的位置。
--includedir-server- 打印 C 头文件的位置以进行服务器编程。
--libdir- 打印目标代码库的位置。
--pkglibdir- 打印动态可加载模块的位置,或服务器将在其中搜索的位置。 (其他与体系结构相关的数据文件也可能安装在此目录中.)
--localedir- 打印语言环境支持文件的位置。 (如果在构建 PostgreSQL 时未配置语言环境支持,则这将是一个空字符串.)
--mandir- 打印手册页的位置。
--sharedir- 打印与体系结构无关的支持文件的位置。
--sysconfdir- 打印系统范围的配置文件的位置。
--pgxs- 打印 extensionsmakefile 的位置。
--configure- 打印配置 PostgreSQL 进行构建时为
configure脚本提供的选项。这可用于重现相同的配置,或找出构建二进制软件包的选项。 (但是请注意,二进制软件包通常包含特定于供应商的自定义补丁.)另请参见以下示例。
- 打印配置 PostgreSQL 进行构建时为
--cc- 打印用于构建 PostgreSQL 的
CC变量的值。这显示了使用的 C 编译器。
- 打印用于构建 PostgreSQL 的
--cppflags- 打印用于构建 PostgreSQL 的
CPPFLAGS变量的值。这显示了在预处理时需要的 C 编译器开关(通常是-I开关)。
- 打印用于构建 PostgreSQL 的
--cflags- 打印用于构建 PostgreSQL 的
CFLAGS变量的值。这显示了 C 编译器开关。
- 打印用于构建 PostgreSQL 的
--cflags_sl- 打印用于构建 PostgreSQL 的
CFLAGS_SL变量的值。这显示了用于构建共享库的其他 C 编译器开关。
- 打印用于构建 PostgreSQL 的
--ldflags- 打印用于构建 PostgreSQL 的
LDFLAGS变量的值。这显示了链接器开关。
- 打印用于构建 PostgreSQL 的
--ldflags_ex- 打印用于构建 PostgreSQL 的
LDFLAGS_EX变量的值。这显示了仅用于构建可执行文件的链接器开关。
- 打印用于构建 PostgreSQL 的
--ldflags_sl- 打印用于构建 PostgreSQL 的
LDFLAGS_SL变量的值。这显示了仅用于构建共享库的链接器开关。
- 打印用于构建 PostgreSQL 的
--libs- 打印用于构建 PostgreSQL 的
LIBS变量的值。它通常包含用于链接到 PostgreSQL 的外部库的-l开关。
- 打印用于构建 PostgreSQL 的
--version- 打印 PostgreSQL 的版本。
-?--help- 显示有关 pg_config 命令行参数的帮助,然后退出。
如果给出多个选项,则信息以该 Sequences 打印,每行打印一项。如果未给出任何选项,则将打印所有可用信息以及标签。
Notes
在 PostgreSQL 8.1 中添加了选项--docdir,--pkgincludedir,--localedir,--mandir,--sharedir,--sysconfdir,--cc,--cppflags,--cflags,--cflags_sl,--ldflags,--ldflags_sl和--libs。选项--htmldir已添加到 PostgreSQL 8.4 中。 --ldflags_ex选项已添加到 PostgreSQL 9.0 中。
Example
要重现当前 PostgreSQL 安装的构建配置,请运行以下命令:
eval ./configure `pg_config --configure`
pg_config --configure的输出包含 Shell 引号,因此带有空格的参数可以正确表示。因此,需要使用eval才能获得正确的结果。