PostgreSQL-8.4 : undefined symbol: palloc

标签 postgresql postgresql-extensions

我正在尝试建立一个数据库并且必须创建一个函数:

create or replace function uuid() returns uuid as 'moss_uuidgen', 'moss_uuidgen' language 'C' strict;

每次我执行 postgre 都会告诉我在 .so 文件中有一个 undefined symbol palloc 我知道这个版本的 Postgresql 已经过时,但它似乎是唯一适用于我的项目的版本。有谁知道为什么 postgre 似乎不知道 palloc

moss=# create or replace function uuid() returns uuid as 'moss_uuidgen',
moss-# 'moss_uuidgen' language 'C' strict;
FEHLER:  konnte Bibliothek »/usr/lib/postgresql/8.4/lib/moss_uuidgen.so« nicht laden: /usr/lib/postgresql/8.4/lib/moss_uuidgen.so: undefined symbol: palloc
moss=# \q
moss@McWiki:/usr/local$

源文件在这里可用:https://foundry.openuru.org/hg/MOSS/file/3e78d60a5282/postgresql 我使用 makemake install 构建文件。 操作系统:带有 Postgre 8.4 的 Ubuntu Server 20.04 LTS

最佳答案

感谢您的帮助,我意识到我为 psql 9.4 构建文件并尝试将其与 psql 8.4 一起使用,这真是愚蠢。现在用 8.4 重建后它工作正常(至少创建函数,db 仍然不能与我的游戏服务器一起工作)

关于PostgreSQL-8.4 : undefined symbol: palloc,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34369260/

相关文章:

postgresql - 如何将值插入 jsonb 列中的 key[]?

postgresql - 如何在 GCP 的 PostgreSQL 中安装外部扩展

sql - 查询在插入数据之前返回值

postgresql-9.3 - 如何在 postgresql 9.3 ubuntu 上安装 plpythonu 扩展

sql - 如何在安装 SQL Extensions Toolkit 的 netezza 中找到数据库名称?

c - 带有 Visual Studio 2015 的 PostgreSQL 9.6.1 扩展

sql - 可以创建扩展但不能在 PostgreSQL 中更改

java - PostgreSQL -\复制命令

sql - 在 PostgreSQL 中使用 EXCLUDE 防止相邻/重叠的条目

sql - 如何在 postgresql 中对未知数量的 bool 值执行 AND?