在创建另一个共享库时链接共享库

时间:2014-03-06 22:09:38

标签: c linux shared-libraries

我正在尝试将文件夹/ home / usr / abc中存在的共享库libabc.so链接到共享库libxyz.so。我尝试在创建共享库之后运行一些示例。 我的Makefile的内容如下:

gcc -L/home/usr/abc/include -Wl,-soname,libxyz.so,-rpath=/home/usr/abc/include -shared -o $@ -labc -lm

当我尝试使用libxyz.so库运行任何示例时,我得到了libabc.so函数的未定义引用错误。

编辑:

我也收到以下警告:

/usr/bin/ld: warning: libabc.so.1, needed by /home/usr/xyz/src/libxyz.so,not found
(try using -rpath or -rpath-link) 

我正确使用rpath吗?

1 个答案:

答案 0 :(得分:0)

您似乎忘记了实际链接到您的图书馆。你需要 添加-labc,例如在-lm标志之前。