如何创建自包含的共享库

时间:2016-06-09 19:00:02

标签: c++ cmake shared-libraries

我有依赖问题。库A依赖于动态库B和C.但是B依赖于D ver1,而C依赖于D ver2。我没有C的来源。

如何创建一个包含C和D ver1的自包含共享库,以便A可以链接到这个新库,B和D ver 1,从而避免D ver1和D ver2之间的冲突?

2 个答案:

答案 0 :(得分:1)

您提到您没有库C的来源,但库A和库B怎么样?如果您有这些来源,请更新库B以依赖库D ver2而不是库D ver1?

我还会考虑合并库A和B.这将删除依赖项菱形。如果你可以复制C的功能,那么你可以将它归结为对D ver2的简单单一依赖。

答案 1 :(得分:0)

您可以静态链接您的依赖项 - 是一个选项。 或者你可以停止注意运输一个自给自足的"库和随附的依赖项。什么麻烦是一些额外的文件?