什么是CMake安装时间?

时间:2014-09-11 01:55:53

标签: cmake

引用from the official documentation

  

“指定在安装时运行的规则。”

安装时间究竟是什么时候?

对我来说问题:我在Linux上,软件是从只是依赖关系和数据的软件包安装的。没有CMake可以在这里做任何事情。因此,软件的安装时间超出了CMake的范围。那究竟是什么意思?

2 个答案:

答案 0 :(得分:4)

构建CMake项目大致可分为三个阶段:

  • 配置时间。这包括在运行cmake时发生的所有事情。
  • 构建时间。这包括从CMake生成的文件实际构建项目时发生的所有事情(例如,在运行make时)。
  • 安装时间。这包括运行CMake生成的INSTALL目标时发生的所有事情(例如,在运行make install时)。

请注意,最后一个阶段是可选的。如果您不想支持调用make install但更喜欢其他部署机制,则只需在CMake脚本中不使用the install command,就不会生成INSTALL目标。

答案 1 :(得分:2)

我想扩展一下ComicSansMS给你的答案。

正如他所提到的 - CMake为install工具生成一个名为make的额外目标(当您使用基于Makefile的生成器时)。

您可能看起来很奇怪,因为包系统用于Linux。但是install目标仍然有用甚至是必要的:

  1. 在开发应用程序时,您可能需要安装(将二进制文件和可能的某些包含文件)移动到某个位置,以便您的某些项目可以互相看到。例如,您可以开发一个库和一组使用它的非相关应用程序。然后必须将此库安装在某个可见的位置。它并不意味着你需要将它放到/usr目录中;您可以使用/home
  2. Linux软件包准备过程需要安装步骤。例如,RPM打包系统在构建rpm包文件时执行三个主要步骤:项目已配置,然后进行编译和链接,最后安装到某个位置。来自此位置的所有文件都被打包到rpm文件中。