CMake无法在Windows 10上跟踪符号链接

CMake无法在Windows 10上跟踪符号链接,windows,build,cmake,filesystems,Windows,Build,Cmake,Filesystems,在我的CMakeLists.txt中,我试图安装一个包含符号链接的文件夹。以前它在Windows7上运行得很好,但切换到Windows10后它就坏了。通过缩小问题范围,我发现windows 10上的符号链接可能是根本原因。 我写了一小块cmake来测试它: file(GLOB all_files *) foreach(each_file ${all_files}) if (IS_SYMLINK ${each_file}) get_filename_component(ea

在我的CMakeLists.txt中,我试图安装一个包含符号链接的文件夹。以前它在Windows7上运行得很好,但切换到Windows10后它就坏了。通过缩小问题范围,我发现windows 10上的符号链接可能是根本原因。 我写了一小块cmake来测试它:

file(GLOB all_files *)
foreach(each_file ${all_files})
    if (IS_SYMLINK ${each_file})
        get_filename_component(each_file_real_path ${each_file} REALPATH)
    endif()
endforeach()
如果我在一个包含符号链接的文件夹中运行cmake脚本,则
IS\u SYMLINK
工作正常,但
获取文件名\u组件(REALPATH)
始终返回相同的输入路径,而不是实际路径


有没有办法修复或解决它?谢谢

考虑使符号链接更深一层,指向更高一层的目录。如果目录符号链接比您所指向的位置高一个级别,则Cmake不会有问题


这只是一个解决办法。目前,cmake中仍然存在一个明确的bug。

考虑将符号链接更深一层,指向更高一层的目录。如果目录符号链接比您所指向的位置高一个级别,则Cmake不会有问题


这只是一个解决办法。此时,cmake中仍然存在一个明确的错误。

是否与Win10中的Win7中的符号链接相同?@joel使用dir列出目录中的所有文件。看起来链接类型是相同的。@HaoCS对此问题有任何更新吗?你解决了这个问题吗?如果是,怎么做?(或许可以提供一个答案)@macetw-Nope。我放弃了复制文件,而没有使用符号链接。@HaoCS您在最新版本的CMake(3.14.4)上试用过吗?是否与Win10中Win7的符号链接相同?@joel使用dir列出目录中的所有文件。看起来链接类型是相同的。@HaoCS对此问题有任何更新吗?你解决了这个问题吗?如果是,怎么做?(或许可以提供一个答案)@macetw-Nope。我放弃了使用符号链接而复制文件。@HaoCS您在最新版本的CMake(3.14.4)上试用过吗?