将其他库链接到动态加载的库中

时间:2012-05-23 13:25:01

标签: c++ gcc shared-libraries dynamic-loading

我正在编写一个由另一个程序员动态加载的库。该库使用一些Boost库(例如,线程)。是否有可能在不重新编译有问题的程序的情况下使其工作?

如果我使用链接标志-lboost_thread,它不起作用,因为使用此库的程序也需要链接相同的Boost库。使用/usr/lib/libboost_thread.a也不起作用,因为.a文件未使用-fPIC进行编译。

我在Linux下使用GCC。

1 个答案:

答案 0 :(得分:0)

再次尝试,我发现问题不是我所描述的。由于某些其他原因,库没有加载。我发现将库与-lboost_thread链接起来的作用符合以下条件:

  • gcc提供编译器警告(可能是因为这些库来自-L以外的$LD_LIBRARY_PATH路径。)
  • 加载库时,如果可以找到它们,它会自动加载Boost。
相关问题