perbone / luascript

Lua language support for Godot Engine
Apache License 2.0
629 stars 44 forks source link

windows vs2017 compile error #60

Closed leelyn closed 1 year ago

leelyn commented 1 year ago

D:\godot>scons platform=windows module_luascript_enabled=yes scons: Reading SConscript files ... Auto-detected 8 CPU cores available for build parallelism. Using 7 cores by default. You can override it with the -j argument. Found MSVC, arch x86_64 Building for platform "windows", architecture "x86_64", target "editor". Checking for C header file mntent.h... (cached) no scons: done reading SConscript files. scons: Building targets ... [ 1%] Compiling platform\windows\console_wrapper_windows.cpp ... [ 2%] rc /DTOOLS_ENABLED /DDEBUG_ENABLED /DNDEBUG /DNO_EDITOR_SPLASH /DWINDOWS_ENABLED /DWASAPI_ENABLED /DWINMIDI_ENABLED /DTYPED_METHOD_BIND /DWIN32 /DMSVC /DWINVER=0x0601 /D_WIN32_WINNT=0x0601 /DNOMINMAX /D_WIN64 /DVULKAN_ENABLED /DGLES3_ENABLED /DMINIZIP_ENABLED /DZSTD_STATIC_LINKING_ONLY /DUSE_VOLK /DVK_USE_PLATFORM_WIN32_KHR /DGLAD_ENABLED /DGLES_OVER_GL /Ithirdparty\freetype\include /Ithirdparty\libpng /Ithirdparty\glad /Ithirdparty\volk /Ithirdparty\vulkan /Ithirdparty\vulkan\include /Ithirdparty\zstd /Ithirdparty\zlib "/ID:\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.16.27023\ATLMFC\include" "/ID:\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.16.27023\include" "/ID:\Windows Kits\10\include\10.0.19041.0\ucrt" "/ID:\Windows Kits\10\include\10.0.19041.0\shared" "/ID:\Windows Kits\10\include\10.0.19041.0\um" "/ID:\Windows Kits\10\include\10.0.19041.0\winrt" "/ID:\Windows Kits\10\include\10.0.19041.0\cppwinrt" "/ID:\Windows Kits\10\include" /Iplatform\windows /I. /nologo /foplatform\windows\godot_res_wrap.windows.editor.x86_64.obj platform\windows\godot_res_wrap.rc [ 2%] console_wrapper_windows.cpp [ 2%] run(["core\extension\gdextension_interface_dump.gen.h"], ["core\extension\gdextension_interface.h", "core\extension\make_interface_dumper.py"]) [ 2%] Building application icon. [ 2%] Building splash screen header. [ 2%] Generating enabled modules header. [ 3%] run(["core\object\gdvirtual.gen.inc"], ["core\object\make_virtuals.py"]) [ 5%] run(["core\extension\ext_wrappers.gen.inc"], ["core\extension\make_wrappers.py"]) [ 6%] Compiling modules\register_module_types.gen.cpp ... [ 6%] register_module_types.gen.cpp [ 6%] Compiling thirdparty\msdfgen\core\Contour.cpp ... [ 6%] Contour.cpp Compiling main\main.cpp ... [ 6%] Compiling main\main_timer_sync.cpp ... [ 6%] Compiling main\performance.cpp ... [ 6%] Compiling thirdparty\msdfgen\core\EdgeHolder.cpp ... [ 6%] main.cpp [ 6%] main_timer_sync.cpp [ 6%] performance.cpp [ 6%] Compiling thirdparty\msdfgen\core\MSDFErrorCorrection.cpp ... EdgeHolder.cpp

...........

[ 27%] 用于 x64 的 Microsoft (R) C/C++ 优化编译器 19.16.27045 版 版权所有(C) Microsoft Corporation。保留所有权利。

[ 27%] ParserATNSimulator.cpp [ 27%] Compiling modules\luascript\lib\antlr4\atn\PredictionMode.cpp ... [ 27%] 用于 x64 的 Microsoft (R) C/C++ 优化编译器 19.16.27045 版 版权所有(C) Microsoft Corporation。保留所有权利。

Compiling modules\luascript\lib\antlr4\atn\ProfilingATNSimulator.cpp ... PredictionMode.cpp [ 27%] Compiling modules\luascript\lib\antlr4\atn\RangeTransition.cpp ... 用于 x64 的 Microsoft (R) C/C++ 优化编译器 19.16.27045 版 版权所有(C) Microsoft Corporation。保留所有权利。

ProfilingATNSimulator.cpp 用于 x64 的 Microsoft (R) C/C++ 优化编译器 19.16.27045 版 版权所有(C) Microsoft Corporation。保留所有权利。

RangeTransition.cpp D:\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.16.27023\include\xlocale(319): warning C4530: 使用了 C++ 异常处理程序,但未启用展开语义。请指定 /EHsc D:\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.16.27023\include\xlocale(319): warning C4530: 使用了 C++ 异常处理程序,但未启用展开语义。请指定 /EHsc [ 27%] Compiling modules\luascript\lib\antlr4\atn\RuleTransition.cpp ... D:\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.16.27023\include\xlocale(319): warning C4530: 使用了 C++ 异常处理程序,但未启用展开语义。请指定 /EHsc 用于 x64 的 Microsoft (R) C/C++ 优化编译器 19.16.27045 版 版权所有(C) Microsoft Corporation。保留所有权利。

RuleTransition.cpp D:\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.16.27023\include\xlocale(319): warning C4530: 使用了 C++ 异常处理程序,但未启用展开语义。请指定 /EHsc D:\Windows Kits\10\include\10.0.19041.0\um\Parser.h(60): error C3646: “m_cCurToken”: 未知重写说明符 D:\Windows Kits\10\include\10.0.19041.0\um\Parser.h(60): error C2143: 语法错误: 缺少“,”(在“[”的前面) D:\Windows Kits\10\include\10.0.19041.0\um\Parser.h(60): error C2143: 语法错误: 缺少“)”(在“;”的前面) D:\Windows Kits\10\include\10.0.19041.0\um\Parser.h(60): error C2238: 意外的标记位于“;”之前 D:\Windows Kits\10\include\10.0.19041.0\um\Parser.h(61): error C3646: “m_cCurWord”: 未知重写说明符 D:\Windows Kits\10\include\10.0.19041.0\um\Parser.h(61): error C2143: 语法错误: 缺少“,”(在“[”的前面) D:\Windows Kits\10\include\10.0.19041.0\um\Parser.h(61): error C2143: 语法错误: 缺少“)”(在“;”的前面) D:\Windows Kits\10\include\10.0.19041.0\um\Parser.h(61): error C2238: 意外的标记位于“;”之前 D:\Windows Kits\10\include\10.0.19041.0\um\Parser.h(62): error C3646: “m_cCurBuffer”: 未知重写说明符 D:\Windows Kits\10\include\10.0.19041.0\um\Parser.h(62): error C2143: 语法错误: 缺少“,”(在“[”的前面) D:\Windows Kits\10\include\10.0.19041.0\um\Parser.h(62): error C2143: 语法错误: 缺少“)”(在“;”的前面) D:\Windows Kits\10\include\10.0.19041.0\um\Parser.h(62): error C2238: 意外的标记位于“;”之前 D:\Windows Kits\10\include\10.0.19041.0\um\Parser.h(64): error C2143: 语法错误: 缺少“;”(在“”的前面) D:\Windows Kits\10\include\10.0.19041.0\um\Parser.h(64): error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int D:\Windows Kits\10\include\10.0.19041.0\um\Parser.h(64): error C2238: 意外的标记位于“;”之前 D:\Windows Kits\10\include\10.0.19041.0\um\Parser.h(65): error C3646: “m_dwError”: 未知重写说明符 D:\Windows Kits\10\include\10.0.19041.0\um\Parser.h(65): error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int D:\Windows Kits\10\include\10.0.19041.0\um\Parser.h(68): error C3646: “Read”: 未知重写说明符 D:\Windows Kits\10\include\10.0.19041.0\um\Parser.h(68): error C2059: 语法错误:“(” D:\Windows Kits\10\include\10.0.19041.0\um\Parser.h(68): error C2238: 意外的标记位于“;”之前 D:\Windows Kits\10\include\10.0.19041.0\um\Parser.h(69): error C3646: “SetError”: 未知重写说明符 D:\Windows Kits\10\include\10.0.19041.0\um\Parser.h(69): error C2059: 语法错误:“(” D:\Windows Kits\10\include\10.0.19041.0\um\Parser.h(69): error C2334: “{”的前面有意外标记;跳过明显的函数体 D:\Windows Kits\10\include\10.0.19041.0\um\Parser.h(83): error C2143: 语法错误: 缺少“;”(在“”的前面) D:\Windows Kits\10\include\10.0.19041.0\um\Parser.h(83): error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int D:\Windows Kits\10\include\10.0.19041.0\um\Parser.h(83): error C2238: 意外的标记位于“;”之前 D:\Windows Kits\10\include\10.0.19041.0\um\Parser.h(84): error C2143: 语法错误: 缺少“;”(在“”的前面) D:\Windows Kits\10\include\10.0.19041.0\um\Parser.h(84): error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int D:\Windows Kits\10\include\10.0.19041.0\um\Parser.h(84): error C2238: 意外的标记位于“;”之前 D:\Windows Kits\10\include\10.0.19041.0\um\Parser.h(86): error C3646: “Start”: 未知重写说明符 D:\Windows Kits\10\include\10.0.19041.0\um\Parser.h(86): error C2059: 语法错误:“(” D:\Windows Kits\10\include\10.0.19041.0\um\Parser.h(86): error C2238: 意外的标记位于“;”之前 D:\Windows Kits\10\include\10.0.19041.0\um\Parser.h(88): error C2143: 语法错误: 缺少“;”(在“”的前面) D:\Windows Kits\10\include\10.0.19041.0\um\Parser.h(88): error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int D:\Windows Kits\10\include\10.0.19041.0\um\Parser.h(88): error C2238: 意外的标记位于“;”之前 D:\Windows Kits\10\include\10.0.19041.0\um\Parser.h(89): error C3646: “GetError”: 未知重写说明符 D:\Windows Kits\10\include\10.0.19041.0\um\Parser.h(89): error C2059: 语法错误:“(” D:\Windows Kits\10\include\10.0.19041.0\um\Parser.h(89): error C2334: “{”的前面有意外标记;跳过明显的函数体 D:\Windows Kits\10\include\10.0.19041.0\um\Parser.h(74): error C2065: “m_cCurBuffer”: 未声明的标识符 D:\Windows Kits\10\include\10.0.19041.0\um\Parser.h(75): error C2065: “m_pCurrentIndex”: 未声明的标识符 D:\Windows Kits\10\include\10.0.19041.0\um\Parser.h(76): error C2065: “m_dwError”: 未声明的标识符 D:\Windows Kits\10\include\10.0.19041.0\um\Parser.h(94): error C2143: 语法错误: 缺少“;”(在“”的前面) D:\Windows Kits\10\include\10.0.19041.0\um\Parser.h(94): error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int D:\Windows Kits\10\include\10.0.19041.0\um\Parser.h(94): error C2238: 意外的标记位于“;”之前 D:\Windows Kits\10\include\10.0.19041.0\um\Parser.h(109): error C3646: “AddTail”: 未知重写说明符 D:\Windows Kits\10\include\10.0.19041.0\um\Parser.h(109): error C2059: 语法错误:“(” D:\Windows Kits\10\include\10.0.19041.0\um\Parser.h(109): error C2238: 意外的标记位于“;”之前 D:\Windows Kits\10\include\10.0.19041.0\um\Parser.h(110): error C3646: “GetTail”: 未知重写说明符 D:\Windows Kits\10\include\10.0.19041.0\um\Parser.h(110): error C2059: 语法错误:“(” D:\Windows Kits\10\include\10.0.19041.0\um\Parser.h(110): error C2238: 意外的标记位于“;”之前 D:\Windows Kits\10\include\10.0.19041.0\um\Parser.h(60): error C3646: “m_cCurToken”: 未知重写说明符 D:\Windows Kits\10\include\10.0.19041.0\um\Parser.h(60): error C2143: 语法错误: 缺少“,”(在“[”的前面) D:\Windows Kits\10\include\10.0.19041.0\um\Parser.h(60): error C2143: 语法错误: 缺少“)”(在“;”的前面) D:\Windows Kits\10\include\10.0.19041.0\um\Parser.h(60): error C2238: 意外的标记位于“;”之前 D:\Windows Kits\10\include\10.0.19041.0\um\Parser.h(61): error C3646: “m_cCurWord”: 未知重写说明符 D:\Windows Kits\10\include\10.0.19041.0\um\Parser.h(61): error C2143: 语法错误: 缺少“,”(在“[”的前面) D:\Windows Kits\10\include\10.0.19041.0\um\Parser.h(61): error C2143: 语法错误: 缺少“)”(在“;”的前面) D:\Windows Kits\10\include\10.0.19041.0\um\Parser.h(61): error C2238: 意外的标记位于“;”之前 D:\Windows Kits\10\include\10.0.19041.0\um\Parser.h(62): error C3646: “m_cCurBuffer”: 未知重写说明符 D:\Windows Kits\10\include\10.0.19041.0\um\Parser.h(62): error C2143: 语法错误: 缺少“,”(在“[”的前面) D:\Windows Kits\10\include\10.0.19041.0\um\Parser.h(62): error C2143: 语法错误: 缺少“)”(在“;”的前面) D:\Windows Kits\10\include\10.0.19041.0\um\Parser.h(62): error C2238: 意外的标记位于“;”之前 D:\Windows Kits\10\include\10.0.19041.0\um\Parser.h(64): error C2143: 语法错误: 缺少“;”(在“”的前面) D:\Windows Kits\10\include\10.0.19041.0\um\Parser.h(64): error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int D:\Windows Kits\10\include\10.0.19041.0\um\Parser.h(64): error C2238: 意外的标记位于“;”之前 D:\Windows Kits\10\include\10.0.19041.0\um\Parser.h(65): error C3646: “m_dwError”: 未知重写说明符 D:\Windows Kits\10\include\10.0.19041.0\um\Parser.h(65): error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int D:\Windows Kits\10\include\10.0.19041.0\um\Parser.h(68): error C3646: “Read”: 未知重写说明符 D:\Windows Kits\10\include\10.0.19041.0\um\Parser.h(68): error C2059: 语法错误:“(” D:\Windows Kits\10\include\10.0.19041.0\um\Parser.h(68): error C2238: 意外的标记位于“;”之前 D:\Windows Kits\10\include\10.0.19041.0\um\Parser.h(69): error C3646: “SetError”: 未知重写说明符 D:\Windows Kits\10\include\10.0.19041.0\um\Parser.h(69): error C2059: 语法错误:“(” D:\Windows Kits\10\include\10.0.19041.0\um\Parser.h(69): error C2334: “{”的前面有意外标记;跳过明显的函数体 D:\Windows Kits\10\include\10.0.19041.0\um\Parser.h(83): error C2143: 语法错误: 缺少“;”(在“”的前面) D:\Windows Kits\10\include\10.0.19041.0\um\Parser.h(83): error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int D:\Windows Kits\10\include\10.0.19041.0\um\Parser.h(83): error C2238: 意外的标记位于“;”之前 D:\Windows Kits\10\include\10.0.19041.0\um\Parser.h(84): error C2143: 语法错误: 缺少“;”(在“”的前面) D:\Windows Kits\10\include\10.0.19041.0\um\Parser.h(84): error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int D:\Windows Kits\10\include\10.0.19041.0\um\Parser.h(84): error C2238: 意外的标记位于“;”之前 D:\Windows Kits\10\include\10.0.19041.0\um\Parser.h(86): error C3646: “Start”: 未知重写说明符 D:\Windows Kits\10\include\10.0.19041.0\um\Parser.h(86): error C2059: 语法错误:“(” D:\Windows Kits\10\include\10.0.19041.0\um\Parser.h(86): error C2238: 意外的标记位于“;”之前 D:\Windows Kits\10\include\10.0.19041.0\um\Parser.h(88): error C2143: 语法错误: 缺少“;”(在“”的前面) D:\Windows Kits\10\include\10.0.19041.0\um\Parser.h(88): error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int D:\Windows Kits\10\include\10.0.19041.0\um\Parser.h(88): error C2238: 意外的标记位于“;”之前 D:\Windows Kits\10\include\10.0.19041.0\um\Parser.h(89): error C3646: “GetError”: 未知重写说明符 D:\Windows Kits\10\include\10.0.19041.0\um\Parser.h(89): error C2059: 语法错误:“(” D:\Windows Kits\10\include\10.0.19041.0\um\Parser.h(89): error C2334: “{”的前面有意外标记;跳过明显的函数体 D:\Windows Kits\10\include\10.0.19041.0\um\Parser.h(74): error C2065: “m_cCurBuffer”: 未声明的标识符 D:\Windows Kits\10\include\10.0.19041.0\um\Parser.h(75): error C2065: “m_pCurrentIndex”: 未声明的标识符 D:\Windows Kits\10\include\10.0.19041.0\um\Parser.h(76): error C2065: “m_dwError”: 未声明的标识符 D:\Windows Kits\10\include\10.0.19041.0\um\Parser.h(94): error C2143: 语法错误: 缺少“;”(在“”的前面) D:\Windows Kits\10\include\10.0.19041.0\um\Parser.h(94): error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int D:\Windows Kits\10\include\10.0.19041.0\um\Parser.h(94): error C2238: 意外的标记位于“;”之前 D:\Windows Kits\10\include\10.0.19041.0\um\Parser.h(109): error C3646: “AddTail”: 未知重写说明符 D:\Windows Kits\10\include\10.0.19041.0\um\Parser.h(109): error C2059: 语法错误:“(” D:\Windows Kits\10\include\10.0.19041.0\um\Parser.h(109): error C2238: 意外的标记位于“;”之前 D:\Windows Kits\10\include\10.0.19041.0\um\Parser.h(110): error C3646: “GetTail”: 未知重写说明符 D:\Windows Kits\10\include\10.0.19041.0\um\Parser.h(110): error C2059: 语法错误:“(” D:\Windows Kits\10\include\10.0.19041.0\um\Parser.h(110): error C2238: 意外的标记位于“;”之前 modules\luascript\lib\antlr4\atn\ParserATNSimulator.cpp(115): error C2027: 使用了未定义类型“antlr4::Parser” d:\godot\modules\luascript\lib\antlr4\support/Declarations.h(38): note: 参见“antlr4::Parser”的声明 modules\luascript\lib\antlr4\atn\ParserATNSimulator.cpp(139): error C2027: 使用了未定义类型“antlr4::Parser” d:\godot\modules\luascript\lib\antlr4\support/Declarations.h(38): note: 参见“antlr4::Parser”的声明 [ 27%] Compiling modules\luascript\lib\antlr4\atn\SemanticContext.cpp ... modules\luascript\lib\antlr4\atn\ParserATNSimulator.cpp(621): error C2664: “std::shared_ptr antlr4::atn::SemanticContext::evalPrecedence(antlr4::Recognizer ,antlr4::RuleContext ) const”: 无法将参数 1 从“antlr4::Parser const ”转换为“antlr4::Recognizer ” with [ _Ty=antlr4::atn::SemanticContext ] modules\luascript\lib\antlr4\atn\ParserATNSimulator.cpp(621): note: 与指向的类型无关;强制转换要求 reinterpret_cast、C 样式强制转换或函数样式强制转换 modules\luascript\lib\antlr4\atn\ParserATNSimulator.cpp(818): error C2664: “bool antlr4::atn::SemanticContext::eval(antlr4::Recognizer ,antlr4::RuleContext ) const”: 无法将参数 1 从“antlr4::Parser const ”转换为“antlr4::Recognizer ” modules\luascript\lib\antlr4\atn\ParserATNSimulator.cpp(818): note: 与指向的类型无关;强制转换要求 reinterpret_cast、C 样式强制转换或函数样式强制转换用于 x64 的 Microsoft (R) C/C++ 优化编译器 19.16.27045 版 版权所有(C) Microsoft Corporation。保留所有权利。

perbone commented 1 year ago

I do not support windows. Tks