当当前版本为 3.3 时,Ubuntu 发布了 CMake 2.8。其他 Linux 发行版也有类似的做法。是否有 CMake 3.0 的向后兼容性问题之类的原因?
我发现很多人愿意解释如何将 CMake 升级到最新版本,但不明白为什么默认情况下没有这样做。在我决定覆盖决定并自行升级之前,我想了解保留它的心态。
最佳答案
取决于您使用的 Linux 发行版。发行版的维护者无法发布 future 的版本,并且通常他们不会通过更新来升级版本,因为这可能会破坏现有的应用程序。
CMake 3.0 有一些轻微的不兼容性。更重要的是,它获得了新功能并修复了一些错误。如果软件依赖于这些,您将需要新版本。
顺便说一句:对于 CMake 2.8,版本号的第三部分是相关的。他们在 2.8.x 上停留了很长时间,并随着 x 的增加而添加了功能。然后他们无法更新到2.9或2.10,因此他们决定更改版本方案并在3.y中增加y。
您的问题适用于更广泛的软件。这是一个普遍的问题,发行版是否应该坚持他们提供的软件的定义版本,或者是否应该更新它并可能破坏客户的设置。 RHEL 或 SLE 等企业发行版非常保守,并且会在至少十年内修复错误。 Ubuntu 每六个月更新一次发行版,但您可以坚持使用 LTS 三年。 Fedora 甚至在发布后更新了一些关键组件,例如内核。 Arch Linux 和 openSuse Tumbleweed 是滚动版本,当上游更新发布新版本时,几乎每天都会更新其软件。
关于cmake - 为什么 Linux 发行版会发布过时的 CMake 版本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33011560/