1

以下不起作用:

cmake file ( copy "C:/pathtofile/file.file" DESTINATION "D:/pathtofile2/file2.file" )

有没有办法使用 cmake 实现同样的目标?

4

2 回答 2

1

该文档指出 DESTINATION 必须是一个目录。因此重命名文件不能以这种方式工作。

execute_process(COMMAND ${CMAKE_COMMAND} -E copy "C:/pathtofile/file.file" "D:/pathtofile2/file2.file")

应该管用。

于 2017-05-18T07:09:12.857 回答
0

cmakes 奇妙的配置文件系统将工作。这些文件可以有不同的名称,但基本上如果它发现任何可以通过 cmake 扩展的变量,如 ${cmake_root_dir} 或 $ENV{localappdata},它将编辑文件,将变量替换为它们的值并将其保存到新的新名称下的位置。因此,如果没有变量,它只会复制。

Configure_file( C:/pathtofile/file.file" "D:/pathtofile2/file2.file")

如果您出于某种原因在其中有 cmake 样式变量并且您不希望它们扩展,请使用 @Only 因为它只会扩展由“@”包围的变量:

Configure_file( C:/pathtofile/file.file" "D:/pathtofile2/file2.file" @ONLY)
于 2017-05-18T07:07:04.077 回答