我正在尝试将文件夹/ 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吗?
答案 0 :(得分:0)
您似乎忘记了实际链接到您的图书馆。你需要
添加-labc
,例如在-lm
标志之前。