C++ 在链接库中混合Boost版本

C++ 在链接库中混合Boost版本,c++,boost,mongodb-c,C++,Boost,Mongodb C,我有一个应用程序,它在一个静态链接库中使用Boost和MongoDB Cxx驱动程序2.2(由于Boost Filesystem v2,它必须使用Boost 1.48) 现在我想将应用程序的Boost版本升级到1.54以使用Boost.Log 当使用1.54并链接到一个使用1.48的lib时,是否有可能做到这一点,是否会出现任何预期的细微错误 注意:我无法升级MongoDB Cxx驱动程序,因为应用程序必须在Windows XP上运行。您静态链接到旧版本的Boost(通过第三方静态库),现在您想

我有一个应用程序,它在一个静态链接库中使用Boost和MongoDB Cxx驱动程序2.2(由于Boost Filesystem v2,它必须使用Boost 1.48)

现在我想将应用程序的Boost版本升级到1.54以使用Boost.Log

当使用1.54并链接到一个使用1.48的lib时,是否有可能做到这一点,是否会出现任何预期的细微错误


注意:我无法升级MongoDB Cxx驱动程序,因为应用程序必须在Windows XP上运行。

您静态链接到旧版本的Boost(通过第三方静态库),现在您想静态链接到另一个Boost版本吗?由于同一个符号有多个定义,因此这甚至不会链接。如果您使用MongoDB作为共享库(不知道是否可能),那么您可以尝试将您的应用程序静态链接到较新的Boost,假设您不会跨越第三方库边界传递Boost类型。这就是我的假设。谢谢你的意见