CPACK_SET_DESTDIR

布尔切换,使 CPack 在打包时使用 DESTDIR 机制。

DESTDIR 表示目标目录。 makefile 用户通常使用它在非默认位置安装软件。这是一种基本的重定位机制,不应在 Windows 上使用(请参阅 CMAKE_INSTALL_PREFIX 文档)。它通常是这样调用的:

make DESTDIR=/home/john install

它将使用安装前缀安装相关软件,例如``/usr/local`` 加上``DESTDIR`` 值,最终给出``/home/john/usr/local``。准备包时,CPack 首先使用相同的 DESTDIR 机制将要打包的项目安装到本地(到构建树)目录中。尽管如此,如果设置了“CPACK_SET_DESTDIR”,那么 CPack 将在进行本地安装之前设置“DESTDIR”。最明显的区别是,如果没有 CPACK_SET_DESTDIR,CPack 使用 CPACK_PACKAGING_INSTALL_PREFIX 作为前缀,而设置 CPACK_SET_DESTDIR 后,CPack 将使用 CMAKE_INSTALL_PREFIX 作为前缀。

如果某些安装规则使用绝对的 DESTINATION``(参见 CMake:command:`install` 命令),手动设置 ``CPACK_SET_DESTDIR 可能会有所帮助(或者仅仅是必要的)。但是,从 CPack/CMake 2.8.3 RPM 开始,DEB 安装程序会尝试自动处理 DESTDIR,因此用户很少需要设置它。