无法链接Ubuntu 12.04上不在系统库目录下的共享库

时间:2014-02-04 02:16:12

标签: linux ubuntu

我使用gcc和适当的选项创建了一个共享库libsslab_core.so.1.0.0。我很确定共享库是有效的,因为我已将它链接到另一个源代码(我使用编译器的-l选项明确地告诉编译器,gcc,库的位置)。

在测试库工作之后,我尝试将库集成到我的Linux机器中。我去了/etc/ld.so.conf.d/并添加了一个文件sslab.conf。在文件中我只输入了库的绝对路径/ opt / lib / sslab。接下来,我以root身份执行ldconfig来更新ldconfig的缓存文件。我通过输入ldconfig -p |来检查系统是否找到了新添加的库grep libsslab。我的Linux机器找到了库,所以我认为一切都已完成。

但是,当我尝试使用库编译源代码时,它会给我以下错误:

/usr/bin/ld: cannot find -lsslab_core

当我将库移动到/ usr / local / lib时,更新sslab.conf的内容,并以root身份执行ldconfig。我可以毫无问题地使用共享库。

您对我在Ubuntu 12.04上遇到的问题有任何想法吗?

为了您的信息,我参考TLDP中的文档来生成我自己的共享库。这是链接:http://www.tldp.org/HOWTO/Program-Library-HOWTO/

0 个答案:

没有答案