相关疑难解决方法(0)

链接库的多个版本

我有一个应用程序静态链接来自第三方供应商VENDOR1的库libfoo的X版本.它还与来自不同第三方供应商VENDOR2的动态(共享)库libbar链接,该库将libfoo的Y版本与VENDOR1静态链接.

因此libbar.so包含libfoo.a的版本Y,我的可执行文件包含libfoo.a的版本X.libbar仅在内部使用libfoo,并且没有从我的应用程序传递到libbar的libfoo对象.

构建时没有错误,但在运行时app app出现故障.原因似乎是版本X使用具有不同的尺寸,他们的版本Y和运行时链接似乎混合了结构,它们习惯于通过.

VENDOR1和VENDOR2都是封闭源,所以我无法重建它们.

是否有建立/链接我的应用程序,使得它始终解析版本X和libbar的送花儿给人解析到版本Y和两个从未混合的方法吗?

c c++ unix linux linker

31
推荐指数
2
解决办法
1万
查看次数

标签 统计

c ×1

c++ ×1

linker ×1

linux ×1

unix ×1