CMake猎人错误:'意外的MSVC_VERSION'

u3r8eeie  于 2022-11-11  发布在  其他
关注(0)|答案(1)|浏览(353)

首先,感谢您抽出宝贵时间提供帮助!

  • 操作系统:Windows 10
  • cmake版本:3.24.1
  • Visual Studio 2022版本17.3.3
  • 具有管理员权限的控制台:VS 2022的开发人员命令提示符
  • Perl(草莓Perl):perl 5,版本32,Subversion 1(v5.32.1),为MSWin 32-x64多线程构建

我正在尝试从https://github.com/RavenCommunity/kawpowminer编译kawpowminer。
我已经找到了一些类似错误的其他解决方案,但它们没有帮助我。
查看了这些文件(在错误中打印出的每一个文件),发现了导致这些错误的行“hunter_add_package”。
我还在这些配置文件中将2019年更改为2022年,将15年更改为17年,并根据需要编辑路径。
我从“www.example.com“克隆了一个git-project,地址是C:\Users\MEuser\kphttps://github.com/RavenCommunity/kawpowminer。这是我的脚本,最后一行导致了这个错误。之前没有打印出任何错误。

mkdir kp
 cd kp
 git clone https://github.com/RavenCommunity/kawpowminer
 cd kawpowminer
 git submodule update --init --recursive
 cd build
 cmake -G "Visual Studio 16 2019" -A X64 -H. -Bbuild -DETHASHCL=ON -DETHASHCUDA=ON -DAPICORE=ON ..
 cd build
 cmake --build . --config Release

控制台:VS 2022的开发人员命令提示符

CMake Warning:   Ignoring extra path from command line:

    "C:/Users/Meuser/k2/kawpowminer/build"

 -- [cable ] Cable 0.2.14 initialized
 -- Selecting Windows SDK version 10.0.19041.0 to target Windows 10.0.19044.
 -- [cable ] Configurations: Release;RelWithDebInfo
 -- [hunter] Calculating Toolchain-SHA1
 -- [hunter] Calculating Config-SHA1
 -- [hunter] HUNTER_ROOT: C:/.hunter
 -- [hunter] [ Hunter-ID: e14bc15 | Toolchain-ID: b0b5bc7 | Config-ID: 196746b ]

 [hunter**INTERNAL**] Unexpected MSVC_VERSION: '1933' [hunter**
 INTERNAL**] [Directory:C:/Users/MEuser/k2/kawpowminer]

 --lol------------------------- ERROR ------------------------lol--
     https://docs.hunter.sh/en/latest/reference/errors/error.internal.html
 ------------------------------------------------------------------

 CMake Error at
 C:/.hunter/_Base/Download/Hunter/0.23.214/e14bc15/Unpacked/cmake/modules/hunter_error_page.cmake:12
 (message): Call Stack (most recent call first):  
 C:/.hunter/_Base/Download/Hunter/0.23.214/e14bc15/Unpacked/cmake/modules/hunter_internal_error.cmake:13 (hunter_error_page)  
 C:/.hunter/_Base/Download/Hunter/0.23.214/e14bc15/Unpacked/cmake/modules/hunter_setup_msvc.cmake:73
 (hunter_internal_error)  
 C:/.hunter/_Base/Download/Hunter/0.23.214/e14bc15/Unpacked/cmake/modules/hunter_finalize.cmake:117
 (hunter_setup_msvc)  
 C:/.hunter/_Base/Download/Hunter/0.23.214/e14bc15/Unpacked/cmake/modules/hunter_add_package.cmake:23
 (hunter_finalize)   CMakeLists.txt:56 (hunter_add_package)

 -- Configuring incomplete, errors occurred!

我确实在互联网和堆栈上发现了类似的错误,但没有什么真正帮助我。我还搜索了文件和配置(CMakeLists.txt),并研究了一些行,但我真的没有发现任何有趣的,类似的或工作。
(it在我的国家是凌晨5点,请不要认为我没有做很多研究或任何事情,我只是迷路了)
我还为HunterGate尝试了不同的包含,如include(“cmake/HunterGate.make”)

HunterGate(
    URL "https://github.com/ruslo/hunter/archive/v0.23.33.tar.gz"
    SHA1 "abcf4b9b77b5a0160abc1da1cdda35f64b14196a"
)

但在这一点上,我不得不承认,我不知道我实际上在做什么...

euoag5mw

euoag5mw1#

调查您的错误消息,

[hunter**INTERNAL**] Unexpected MSVC_VERSION: '1933' [hunter**
 INTERNAL**] [Directory:C:/Users/MEuser/k2/kawpowminer]

我很确定this hunter PR ("Add support for Visual Studio 17 2022" #484 )已经修复了这个问题,它在:/cmake/modules/hunter_setup_msvc.cmake中添加了以下内容:


# ...

  string(REGEX MATCH "^193[0-9]$" _vs_17_2022 "${MSVC_VERSION}")
  # ...
  elseif(_vs_17_2022)
    set(HUNTER_MSVC_VERSION "17")
    set(HUNTER_MSVC_YEAR "2022")
  # ...

解决方法是更新您的猎人版本以获得此修复。
你在你的问题中提供了这么多细节,我给你一颗星星(我想你只是错过了你使用的猎人版本)。
如果我能在我的答案上多加一点,我会说阅读长的错误信息来找到重要的部分和谷歌搜索关键短语是有用的(一种技能?/一种有用的技巧?)。如果这真的是你的问题的原因,幸运的话,你有可能在不到5分钟的时间内找到答案。我刚刚阅读了你的错误信息,并谷歌搜索:

hunter "Unexpected MSVC_VERSION"

(the引号表示查找完全匹配项)
,这让我找到了hunter_setup_msvc.cmake in the old hunter repo,然后我就去了新的repo,去了文件,(幸运的是)最近提交的GitHub横幅上写着“tnixeu add msvc17_2022 to huter_setup_msvc.cmake (#484)“。

  • 奖金链接到维基百科上的MSVC版本。

相关问题