2017-06-14 139 views
0

我使用PGAFIS库进行指纹匹配。为此,我安装了postgresql并拥有一些用户定义的c函数。POSTGRESQL - 错误:无法加载库pgafis.so:undefined symbol:lfsparms_V2

PGAFIS包含makefile文件,文件。对照,SQL和解压的SQL文件,一切

我编写和pgafis.so文件相同,everyfile是在正确的位置。

在我的pgAdmin-III当我运行CREATE EXTENSION pgafis它给了我以下错误:

ERROR: could not load library "/usr/lib/postgresql/9.4/lib/pgafis.so": /usr/lib/postgresql/9.4/lib/pgafis.so: undefined symbol: lfsparms_V2 
SQL state: XX000 

请帮助。在此先感谢

(这是从Postgresql user defined c function issues后续)

+1

有问题的符号来自[NBIS包](https://github.com/lessandro/nbis/blob/3d3b05f0144b706bed56407957bc00779baf2fa5/mindtct/src/lib/mindtct/globals.c#L161)。通过PGAFIS Makefile来判断,它预计会在'/ opt/nbis-5.0.0/lib/libmindtct.a'中找到这个定义。这个文件存在吗? –

+0

/opt不包含nbis文件夹..请指导如何进一步处理.. –

回答

0

我希望你忘了链接到所需的库。

尝试增加

PG_LIBS = -lmindtct 

或什么的。如果它不在默认链接器路径上,则需要将-L/path/to/the/containing/directory添加到PG_CPPFLAGS