如何在库的2个版本之间动态选择?

问题描述 投票:0回答:1

我正在开发一个使用 CMake 编译的 C++ 跨平台项目,并使用外部库。该库在旧版本中存在一些问题,但在新版本中存在一系列脱节的问题。这些版本属于同一主要版本,因此 API 是兼容的。我希望允许用户动态(在应用程序启动时)选择应用程序应使用的库版本。

我认为这是动态链接到两者的问题,但只加载一个,但我对这些方面不太熟悉。

我该怎么做?

c++ cmake dynamic-linking
1个回答
1
投票

最简单的方法是构建应用程序两次。源代码的编译只会发生一次,但您将在 CMake 中创建两个可执行文件,链接到两个不同版本的库。然后您可以制作一个启动程序来启动所需的可执行文件。

还有其他解决方案,但它们需要更多工作且不太便携。

© www.soinside.com 2019 - 2024. All rights reserved.