【问题标题】:How to compile trivial files to PostgreSQL source?如何将琐碎的文件编译为 PostgreSQL 源代码?
【发布时间】:2016-12-24 01:48:50
【问题描述】:

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

我从后端复制了一些文件并将它们重命名:目标是用新代码编译旧代码,以便 PostgreSQL 能够识别这一点。我想另一种选择是创建系统的副本并编译两者,一个有修改,一个没有,所以我可以并排比较两者,但我不确定如何配置 pgAdmin 以在两者之间进行识别。为了提供更多详细信息,我正在后端文件夹中处理 PostgreSQL 的索引。

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

【问题讨论】:

    标签: database postgresql database-design


    【解决方案1】:

    如果我没看错,您已经修改了src/backend 中的一些源代码,并希望将您的修改应用于现有的 PostgreSQL 安装。

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

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

    另见:

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多