【发布时间】:2016-03-26 14:04:34
【问题描述】:
我使用动态库 libexample.so 制作了一个程序。动态库依赖于另一个动态库 libtool.so。
由于来自 gcc 的消息,看起来链接器已成功链接 libexample.so。
Building target: libexample.so
Invoking: GCC C++ Linker
g++ -L/home/takehiro/Documents/documents/code/lib/tool -shared -o "libexample.so" ./classes/example.o ./classes/example_template.o ./classes/example_test.o ./classes/impl.o -ltool
Finished building target: libexample.so
cp libexample.so /home/takehiro/Documents/documents/code/lib/example
但是,它无法将其与 libtool.so 链接。
ldd /home/takehiro/Documents/documents/code/lib/example/libexample.so
...
libtool.so => not found
...
我检查了 /home/takehiro/Documents/documents/code/lib/tool 下的 libtool.so 的存在,它由 -L optoin 指向上述链接器
ls /home/takehiro/Documents/documents/code/lib/tool
libtool.so
这是第一次使用依赖另一个动态库的动态库。所以我很困惑。是正常还是故障?为什么它不能链接它们? 有人对我有建议或解决方案吗?我很高兴。 非常感谢。
【问题讨论】: