如何将普通文件编译成PostgreSQL源代码?

时间:2016-12-24 01:48:50

标签: database postgresql database-design

我对PostgreSQL的修改有一些想法,所以我在Windows上建立了一个合适的开发环境。现在我正在玩弄了解如何为它提供新代码。

我从后端复制了一些文件并将其重命名:目标是使用新代码编译旧代码,以便PostgreSQL可以识别它。我想另一个替代方案是创建系统的副本并编译两个,一个带有修改,一个没有,所以我可以并排比较但我不知道如何配置pgAdmin来识别两者之间。为了提供更多细节,我正在后端文件夹中处理PostgreSQL的索引。

我认为这些事情很简单,但我遇到了很多麻烦。我怎样才能完成这项任务?任何相关的材料将不胜感激。

1 个答案:

答案 0 :(得分:0)

如果我读得正确,您已修改src/backend中的部分源代码,并希望将修改应用于现有的PostgreSQL安装。

你做不到。您需要使用包含修改的源代码编译新的PostgreSQL二进制文件(postgres.exe)。然后安装您编译的新PostgreSQL发行版。有关编译窗口的说明,请参阅the manual。请注意,并非所有PostgreSQL版本都支持所有Visual Studio和Visual Studio Express版本,因此请使用您正在编译的PostgreSQL支持的Visual Studio。您可能还需要编译和/或下载某些库依赖项,具体取决于您需要的功能集 - 例如zlib。 (这在Linux上要容易得多,只有Windows构建才有点烦人)。

如果您修改的源与当前运行的PostgreSQL安装具有相同的主要版本(例如9.4或9.6),则可以停止当前运行的安装并启动修改后的二进制文件。但是如果您没有更改与磁盘格式有关的任何内容,否则新的二进制文件将不会与旧格式的数据兼容。显然,在对数据进行实验性PostgreSQL构建之前,您还应该进行备份!

另见: