cmake安装同一个库的多个版本

时间:2014-10-22 15:58:50

标签: c cmake shared-libraries

我正在努力为我的库提供一个连贯且可用/可重用的方案。

我在一个团队中工作,我们使用持续集成,但有时我需要使用同一个库的旧版本。这是因为部分软件没有使用新版本进行更新。

我实际上是在理解如何使用cmake来解决这样的问题时头疼:

PATH/Library/Processor/Library_X/Version/static_library_and_includes

图书馆在哪里放置我的东西 处理器可以是attiny24,atmega,lxpXXXX等 Library_X是库的名称 版本从0到X的渐进数字 static_library_and_includes在cmake模块中构建的静态库以及使用它所需的包含文件。

如何使用cmake执行此操作? 我使用gcc处理不同的微处理器交叉编译。这不是问题。 我使用静态库,这不是问题。 我可以将它们安装在正确的目录中。不是问题 我不能要求可执行文件链接到正确的.a文件。有时cmake选择正确的,有时不选择。 你能否告诉我你们是怎么做的? 提前谢谢

安德烈

1 个答案:

答案 0 :(得分:1)

在此处查看搜索路径:https://cmake.org/cmake/help/latest/command/find_package.html#search-procedure

CMake将在名为name*的目录中找到软件包,因此您可以安装到<prefix>/FizzBuzz-1.0.0<prefix>/FizzBuzz-2.0.0

只要每个文件都是正确的ConfigVersion.cmake文件,它就可以执行您想要的操作。