PostgreSQL 18 中文参考文档(未翻译部分保留英文)🌐 切换到英文原版 →

36.4. 扩展构建基础设施 PGXS #

为 PostgreSQL 编写 C 语言扩展插件时,通常不需要依赖整套庞大的 PostgreSQL 内核源码树。官方提供了被称为 PGXS 的构建基础设施。只要目标操作系统上安装了对应版本的 PostgreSQL 开发头文件与二进制命令,通过标准的 Makefile 模板即可快速编译出二进制插件模块。

一个基础的 PGXS Makefile 规范范例如下:

MODULES = isbn_issn
EXTENSION = isbn_issn
DATA = isbn_issn--1.0.sql
PGFILEDESC = "isbn_issn - 国际标准书号数据类型扩展"

PG_CONFIG = pg_config
PGXS := $(shell $(PG_CONFIG) --pgxs)
include $(PGXS)

只需在本地命令行输入 make 与 make install,PGXS 框架会自动调用 pg_config 探测系统的正确编译器标志位与安装路径,完成编译与部署。