【发布时间】:2014-04-25 09:05:39
【问题描述】:
我已经建立了一个共享库 libC.so,它依赖于 libA.so 和 libB.so。 然后我通过命令使用 libC.so 构建 test.c:
gcc test.c -o test -fPIC -I./ -L./ -lC
会输出错误,找不到 libA.so 和 libB.so 中的一些符号。 我知道,当我添加标志“-lA -lB”时,可以成功构建 tt。
但是我不明白,为什么可以通过以下命令构建成功:
gcc test.c -o test -fPIC -I./ -L./ -lC -Wl,-rpath=.
【问题讨论】:
-
抱歉这个愚蠢的问题。
-
男人 ld。 ...在定位明确包含在链接中的共享对象所需的共享对象时,也使用 -rpath 选项;...
标签: c linux gcc g++ shared-libraries