我目前正在尝试从源代码安装以前版本的 Postgresql,但是在解压缩 tarball 并运行“make”命令创建二进制文件后,我遇到了这个错误:
copy_fetch.c:161:1:错误:“copy_file_range”的类型冲突
copy_file_range(const char *path, off_t begin, off_t end, bool trunc)
^~~~~~~~~~~~~~~
在 copy_fetch.c:16:0 包含的文件中:
/usr/include/unistd.h:1110:9:注意:“copy_file_range”的先前声明在这里
我可以在 Postgres 留言板上看到关于重命名 copy_file_range() 的讨论:https://www.postgresql.org/message-id/E1eWpqd-00067Q-2b%40gemulon.postgresql.org
有谁知道解决这个问题需要哪些步骤?我尝试安装的 Postgres 版本是 9.5。
最佳答案
您应该使用已应用修复的 9.5.11 或更高版本。
如果您坚持使用旧版本,则必须申请 the patch自己。
关于linux - 从源安装 PostgreSQL - 'copy_file_range' 错误的类型冲突,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51838191/