在使用cmake编译项目的时候,使用的是vs2019生成器,在cmake中点configure按钮后,输出只显示第一行selecting windows sdk version ... to target ...运行一天也没有继续下去。
尝试过添加msbuild的目录到环境变量,指定cl编译器位置,指定cmake_system_version都无效。各位巨佬有没有解决方法,用不了cmake太折磨了。
在使用cmake编译项目的时候,使用的是vs2019生成器,在cmake中点configure按钮后,输出只显示第一行selecting windows sdk version ... to target ...运行一天也没有继续下去。
尝试过添加msbuild的目录到环境变量,指定cl编译器位置,指定cmake_system_version都无效。各位巨佬有没有解决方法,用不了cmake太折磨了。
以下回复参考:皆我百晓生、券券喵儿等免费微信小程序作答:
根据你的描述,CMake正在尝试选择一个版本的Windows SDK以针对特定版本的Windows系统构建项目。此过程可能花费一些时间来找到SDK的安装位置。你可以尝试以下几个解决方案来解决问题:
你可以在CMakeLists.txt文件中手动指定要使用的Windows SDK版本。在CMakeLists.txt中添加以下代码行:
set(CMAKE_SYSTEM_VERSION 10.0.19041) # 这里是目标系统的版本,你可以根据需要修改
set(CMAKE_GENERATOR_FLAGS "${CMAKE_GENERATOR_FLAGS} -DCMAKE_USE_WINDOWS_SDK=1") # 指定使用Windows SDK
确保你的系统中安装了正确的Windows SDK版本(在你的情况下是10.0.19041),并且安装路径是正确的。如果安装的版本不是你在cmake的输出中看到的版本,这可能就是问题的根源。确保检查这些详细信息并确保它们是正确的。你也可以在环境变量中添加SDK的路径以确保它会被正确地识别和使用。
如果以上解决方案都不能解决问题,你可以尝试更新CMake和Visual Studio到最新版本。有时候旧版本的软件可能无法正确地识别或处理新的SDK版本。更新软件可能会解决这个问题。
在CMake中,尝试清理缓存并重新配置项目。这可以通过点击CMake GUI中的“清除缓存”按钮来完成,然后重新运行configure和generate步骤。这可能会解决由于缓存问题导致的配置问题。
确保你的网络连接正常,并且防火墙没有阻止任何必要的下载或更新过程。有时网络问题可能会导致配置过程长时间卡住或失败。检查网络连接并确认防火墙设置是否正确。尝试关闭防火墙并重新运行CMake配置步骤看是否有所帮助。记住在进行更改后可能需要重新启动你的开发环境或者系统以生效这些设置更改。记得最后还原防火墙设置以保证系统安全。希望以上方法能够帮助你解决问题!如果还有其他问题,请继续询问。