我试图建立一个数据库并且必须创建一个函数:
create or replace function uuid() returns uuid as 'moss_uuidgen', 'moss_uuidgen' language 'C' strict;
每次执行postgre都会告诉我在.so文件中有一个名为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
我使用make
和make install
构建文件。
操作系统:Ubuntu Server 20.04 LTS和Postgre 8.4
答案 0 :(得分:1)
感谢您的帮助,我意识到我为psql 9.4构建文件,并尝试将其与psql 8.4一起使用,真是愚蠢。现在用8.4进行重建它工作正常(至少创建函数,db仍然无法使用我的游戏服务器)