安装(文件)和文件(安装)之间有什么区别

  • 本文关键字:安装 文件 区别 之间 cmake
  • 更新时间 :
  • 英文 :


我正在尝试将文件移至特定位置,我这样做了:

file(INSTALL file.txt DESTINATION ../install_dir)

这很好。这将file.txt移至指定的目的地。

但是我尝试这样的尝试:

install(FILES ./file.txt DESTINATION ./install_dir)

使用install(FILES)不会像我期望的那样复制文件。当我运行cmake configure命令时,该文件未安装在该位置。

有人可以向我解释区别吗?为什么在运行configure命令时file(INSTALL)可以工作,而install(FILES)不?

两个命令做不同的事情。install(FILES fil DESTINATION dest)指示CMAKE生成构建规则,以便在运行安装步骤时将文件fil复制到dest(make install或等效(。

file(INSTALL ...)在配置时间立即评估,而CMAKE正在解析CMakeLists.txt文件。请注意,此签名主要用于CMAKE的内部实现上述安装步骤:它打印以安装为主题的状态消息等。如果您只想在配置时间复制文件,则可能需要更喜欢file(COPY)file(COPY_IF_DIFFERENT)

最新更新