2013-01-31 61 views
0

我明白,在海湾合作委员会图书馆的顺序很重要,但我怎么知道哪些图书馆应该是第一次,因为我不知道哪个取决于哪个?未定义的引用`krb5_kt_free_entry'

我不断收到与ssl库相关的错误。

LIBS = -lstdc++ -lmysqlclient -lz -lcrypt -lnsl -lssl -lcrypto -ldl 

请有人能指导我如何摆脱这些未定义的引用:他们几个在下面

/usr/lib/libssl.a(kssl.o): In function `kssl_sget_tkt': 
(.text+0x20b9): undefined reference to `krb5_kt_default' 
/usr/lib/libssl.a(kssl.o): In function `kssl_sget_tkt': 
(.text+0x2119): undefined reference to `krb5_kt_get_entry' 
/usr/lib/libssl.a(kssl.o): In function `kssl_sget_tkt': 
(.text+0x218f): undefined reference to `krb5_decrypt_tkt_part' 
/usr/lib/libssl.a(kssl.o): In function `kssl_sget_tkt': 
(.text+0x21b5): undefined reference to `krb5_kt_free_entry' 

我在Makefile中使用这个命令?我真的需要krb5库吗?

感谢

回答

1

事实上,它看起来像你可能需要添加-lkrb5到库列表中。把它放在-lssl之前。

+0

我试过这样做,不起作用。给我同样的错误。是否在正确的位置? – dharag

+0

'-ldl'只提供'dlopen'和相关函数,所以它与你的错误信息无关。 – nneonneo

+0

不知道mysql客户端应该包含哪些库?我只是修改一个makefile来连接到myql服务器。 – dharag