我们有一个Foobar.lib由客户提供的外部库 ( ),它链接到Qt5Core.dll。我们必须在我们自己的代码中使用该库。
在我们的环境中,我们使用 conda 和 conda-forge 提供的 Qt 库,并且 conda-forge 维护者决定将后缀附加
_conda到所有.lib和.dll文件(不知道为什么),所以我们最终在Qt5Core_conda.dll我们的PATH.
这是一个问题,因为我们的运行时要么找不到,要么同时Qt5Core.dll加载,这不起作用,因为一个库中的全局变量不会被另一个库(特别是全局变量)看到。Qt5Core.dllQt5Core_conda.dllQApplication
我们遇到的一件事是打开Foobar.lib并手动更改引用从Qt5Core.dllto Qt5Core_conda.dll,但是考虑到名称较大,我们需要向文件添加新字节,这会弄乱其中的地址(我们怀疑如果我们想要减少名称是可能的)。
我们正在寻找一种方法来更新/重写Foobar.lib以指向Qt5Core_conda.dll而不是Qt5Core.dll,有什么建议吗?
我们的环境是Windows。