2401_85096622 2024-09-28 23:56 采纳率: 0%
浏览 1

在用cmake编译项目selecting windows sdk version ... to ...?

在使用cmake编译项目的时候,使用的是vs2019生成器,在cmake中点configure按钮后,输出只显示第一行selecting windows sdk version ... to target ...运行一天也没有继续下去。

img

尝试过添加msbuild的目录到环境变量,指定cl编译器位置,指定cmake_system_version都无效。各位巨佬有没有解决方法,用不了cmake太折磨了。

  • 写回答

1条回答 默认 最新

  • 一轮明月照丘壑 2024-09-28 23:58
    关注

    以下回复参考:皆我百晓生券券喵儿等免费微信小程序作答:

    根据你的描述,CMake正在尝试选择一个版本的Windows SDK以针对特定版本的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安装路径和版本

    确保你的系统中安装了正确的Windows SDK版本(在你的情况下是10.0.19041),并且安装路径是正确的。如果安装的版本不是你在cmake的输出中看到的版本,这可能就是问题的根源。确保检查这些详细信息并确保它们是正确的。你也可以在环境变量中添加SDK的路径以确保它会被正确地识别和使用。

    解决方案三:更新CMake和Visual Studio

    如果以上解决方案都不能解决问题,你可以尝试更新CMake和Visual Studio到最新版本。有时候旧版本的软件可能无法正确地识别或处理新的SDK版本。更新软件可能会解决这个问题。

    解决方案四:清理缓存和重新配置项目

    在CMake中,尝试清理缓存并重新配置项目。这可以通过点击CMake GUI中的“清除缓存”按钮来完成,然后重新运行configure和generate步骤。这可能会解决由于缓存问题导致的配置问题。

    检查网络和防火墙设置

    确保你的网络连接正常,并且防火墙没有阻止任何必要的下载或更新过程。有时网络问题可能会导致配置过程长时间卡住或失败。检查网络连接并确认防火墙设置是否正确。尝试关闭防火墙并重新运行CMake配置步骤看是否有所帮助。记住在进行更改后可能需要重新启动你的开发环境或者系统以生效这些设置更改。记得最后还原防火墙设置以保证系统安全。希望以上方法能够帮助你解决问题!如果还有其他问题,请继续询问。

    评论

报告相同问题?

问题事件

  • 创建了问题 9月28日

悬赏问题

  • ¥15 UE5.1局部变量对蓝图不可见
  • ¥15 一共有五道问题关于整数幂的运算还有房间号码 还有网络密码的解答?(语言-python)
  • ¥20 sentry如何捕获上传Android ndk 崩溃
  • ¥15 在做logistic回归模型限制性立方条图时候,不能出完整图的困难
  • ¥15 G0系列单片机HAL库中景园gc9307液晶驱动芯片无法使用硬件SPI+DMA驱动,如何解决?
  • ¥15 nasm x86 变量归零
  • ¥65 Tree 树形控件实现单选功能,可以使用element也可以手写一个,实现全选为全选状态
  • ¥60 寻抓云闪付tn组成网页付款链接
  • ¥16 寻字节跳动内部人员帮推简历
  • ¥20 如何通过sentry收集上传Android ndk的崩溃?