0

我已经使用 apt-get 命令在我的 ubuntu 14.04 中安装了 postgresql..
postgresql 9.4
libpg 9.4.8

我想添加一个用户定义的 c 函数以进行动态加载。
我按照规范准备好我的 c 文件和 sql 函数文件,但主要问题是 c 文件包含标题行,如..

    #include “postgres.h”
    #include <string.h>
    #包括“fmgr.h”

我在桌面上有我的文件夹,但没有 postgers.h 或 fmgr.h 文件。
我不知道在我的系统上哪里可以找到源文件,但我已经从 git 下载了整个源文件并添加到同一个文件夹中。
如果我运行编译它显示的命令

postgres_ext.h:47:9: error: unknown type name 'PG_INT64_TYPE'<br>
 typedef PG_INT64_TYPE pg_int64;



我不知道从哪里开始.. 我应该将我的文件放在任何 postgres 目录中,然后编译或下载源文件是正确的选择吗?如何处理错误..?请帮助..提前非常感谢。

4

1 回答 1

1

通过编写一个简单的 Makefile ,使用 PGXS 将您的代码编译为扩展

这将为您设置包含路径、库路径等,并提供正确的编译器标志。

它与涵盖编写基本 C 函数的教程在同一文档中进行了讨论。

于 2017-06-12T04:32:02.383 回答