在尝试从GitHub拉取/合并更新后,我遇到了一个问题。在过去,我只是按照AzerothCore维基上的指示保持服务器更新,没有问题,但最近我尝试更新,在尝试运行CMake后遇到了以下错误:
CMake版本: 3.21.1选择Windows SDK版本10.0.19041.0作为目标Windows10.0.19042。CMake错误在conf/dist/config.cmake:28 (消息):您的脚本变量的值(ON)无效!允许值为: none;static;dynamic;minimal-static;minimal-dynamic.设置静态调用堆栈(最新调用优先):CMakeLists.txt:51 (包括)
配置不完整,出现错误!另请参阅"G:/Build/CMakeFiles/CMakeOutput.log“。另请参阅"G:/Build/CMakeFiles/CMakeError.log“。
我认为自从我上次在GitHub上做了一次拉/合并之后,AC的工作方式有了很大的更新,从错误判断,似乎有一些东西设置为“开”,而它应该是“静态的”,我认为。我看了看配置文件,发现了一些标记为"CSCRIPTS=${CSCRIPTS:- on }“的东西,我想也许我可以把"on”改成"static“,但这没什么用,所以我把它改回了on。
我查看了错误日志,它引用了以下C1083错误:
确定包含文件pthread.h是否存在失败,输出如下:更改目录: G:/Build/CMakeFiles/CMakeTmp
运行生成命令:g:/Visual Studio/Community/MSBuild/Current/Bin/MSBuild.exe cmTC_e2a2b.vcxproj /p:Configuration=Debug /p:Platform=x64 /p:VisualStudioVersion=16.0 /v:m && Microsoft (R) Build Engine version 16.9.0+5e4b48a27 .NET框架
版权所有(C) Microsoft Corporation。版权所有。
用于x64的Microsoft (R) C/C++优化编译器19.28.29914版
版权所有(C) Microsoft Corporation。版权所有。
CheckIncludeFile.c
cl /c /Zi /W1 /WX- /diagnostics:column /Od /Ob0 /D WIN32 /D _WINDOWS /D“CMAKE_INTDIR=”调试“”/D _MBCS /Gm- /RTC1 /MDd /GS /fp:precise /Zc:wchar_t“
G:\Build\CMakeFiles\CMakeTmp\CheckIncludeFile.c(1,10):致命错误G:\Build\CMakeFiles\CMakeTmp\cmTC_e2a2b.vcxproj :无法打开包含文件:'pthread.h':没有这样的文件或目录C1083
我在谷歌上搜索关于pthread.h的信息,发现了这个帖子:https://docs.microsoft.com/en-us/answers/questions/76739/fatal-error-c1083-cannot-open-include-file-39pthre.html
我非常缺乏经验,所以请原谅我的无知,但虽然它引用了相同的错误,但我觉得我的问题的答案必须与某个标记为脚本的变量有关,但我就是找不到它,而且似乎用户的问题来自Visual Studio而不是CMake,所以我不确定建议的运行"vcpkg.exe“的解决方案是否能解决问题。
感谢您的宝贵时间,如果我需要补充任何信息,请告诉我!
发布于 2021-08-06 13:29:34
我想通了!我通过转到G:> AzerothCore > conf > dist > config.cmake找到了我要查找的脚本变量,并将脚本和模块中的值从"-1“更改为”-static“。
我还将脚本部分下CMake中所有“脚本”值的值从默认更改为静态,但这样做本身并不起作用,因此这可能不是必需的,我认为真正起作用的是直接将config.cmake文件中的这两个“1”更改为“静态”。
https://stackoverflow.com/questions/68681609
复制相似问题