标签: c++ linux shared-libraries
我有一个使用共享库B的共享库A和一个依赖于A的应用程序P.
我不想将P与A和B联系起来,而是仅将P与A联系起来,而将A与B联系起来(并以某种方式将B隐藏到P)
我该怎么办?
共享库使用'g ++ -shared ...'
答案 0 :(得分:1)
如果您不需要B作为独立的共享库(可以单独使用它),请不要将其构建为共享库,而是使用符合-fPIC的代码构建静态库 - 然后将此静态库链接到共享库A.
-fPIC
如果您还需要B的共享库,则使用相同的对象来构建共享库。