Can't make builds with Rev 15
-
So after updating to rev15 it seems like something broke, it all works within the unity editor but I can't make builds anymore.
The compiler complains with this:
TiltFiveCore.cpp(593): error C2440: 'static_cast': cannot convert from 'int32_t *' to 'int32_t'here's the full stack trace
Exception: C:\Program Files\Unity\Hub\Editor\2019.4.18f1\Editor\Data\il2cpp/build/deploy/net471/il2cpp.exe did not run properly!
Failed running "C:\Program Files\Unity\Hub\Editor\2019.4.18f1\Editor\Data\il2cpp/build/deploy/net471/il2cpp.exe" --convert-to-cpp --emit-null-checks --enable-array-bounds-check --dotnetprofile="unityaot" --compile-cpp --libil2cpp-static --platform="WindowsDesktop" --architecture="x64" --configuration="Release" --outputpath="D:\workspace\figmin\Temp/StagingArea/Data\Native\GameAssembly.dll" --cachedirectory="D:\workspace\figmin\Assets..\Library/il2cpp_cache" --profiler-report --map-file-parser="C:/Program Files/Unity/Hub/Editor/2019.4.18f1/Editor/Data/Tools/MapFileParser/MapFileParser.exe" --directory=D:/workspace/figmin/Temp/StagingArea/Data/Managed --generatedcppdir=D:/workspace/figmin/Temp/StagingArea/Data/il2cppOutput
stdout:
Building GameAssembly.dll with MsvcDesktopToolChain
Msvc Install Version: 15.0
Msvc Install SDK Directory: C:\Program Files (x86)\Windows Kits\10
Msvc Linker Path: C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.29.30133\bin\HostX64\x64\link.exe
Msvc Compiler Path: C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.29.30133\bin\HostX64\x64\cl.exeOutput directory: D:\workspace\figmin\Temp\StagingArea\Data\Native Cache directory: D:\workspace\figmin\Library\il2cpp_cacheil2cpp.exe didn't catch exception: Unity.IL2CPP.Building.BuilderFailedException: TiltFiveCore.cpp
D:\workspace\figmin\Temp\StagingArea\Data\il2cppOutput\TiltFiveCore.cpp(593): error C2440: 'static_cast': cannot convert from 'int32_t *' to 'int32_t'
D:\workspace\figmin\Temp\StagingArea\Data\il2cppOutput\TiltFiveCore.cpp(593): note: There is no context in which this conversion is possible
D:\workspace\figmin\Temp\StagingArea\Data\il2cppOutput\TiltFiveCore.cpp(597): error C2440: 'static_cast': cannot convert from 'int32_t *' to 'int32_t'
D:\workspace\figmin\Temp\StagingArea\Data\il2cppOutput\TiltFiveCore.cpp(597): note: There is no context in which this conversion is possibleInvocation was: Executable: "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.29.30133\bin\HostX64\x64\cl.exe"
Arguments: "D:\workspace\figmin\Temp\StagingArea\Data\il2cppOutput\TiltFiveCore.cpp" /nologo /c /bigobj /W3 /Zi /EHs /GR- /Gy /utf-8 /wd4102 /wd4800 /wd4056 /wd4190 /wd4723 /wd4467 /wd4503 /wd4996 /wd4200 /Ox /Oi /Oy- /GS- /Gw /GF /Zo /MT /DNET_4_0 /DUNITY_AOT /DIL2CPP_MONO_DEBUGGER_DISABLED /DGC_NOT_DLL /DRUNTIME_IL2CPP /D_WIN32 /DWIN32 /DWIN32_THREADS /D_WINDOWS /DWINDOWS /D_UNICODE /DUNICODE /D_CRT_SECURE_NO_WARNINGS /D_SCL_SECURE_NO_WARNINGS /D_WINSOCK_DEPRECATED_NO_WARNINGS /DNOMINMAX /D_NDEBUG /DNDEBUG /DWINDOWS_SDK_BUILD_VERSION=19041 /DWINAPI_FAMILY=WINAPI_FAMILY_DESKTOP_APP /I"C:\Program Files\Unity\Hub\Editor\2019.4.18f1\Editor\Data\il2cpp\libil2cpp" /I"C:\Program Files\Unity\Hub\Editor\2019.4.18f1\Editor\Data\il2cpp\libil2cpp" /I"C:\Program Files\Unity\Hub\Editor\2019.4.18f1\Editor\Data\il2cpp\external\bdwgc\include" /I"C:\Program Files\Unity\Hub\Editor\2019.4.18f1\Editor\Data\il2cpp\external\xxHash" /I"D:\workspace\figmin\Temp\StagingArea\Data\il2cppOutput" /I"C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.29.30133\include" /I"C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\shared" /I"C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um" /I"C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\winrt" /I"C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\ucrt" /Fo"D:\workspace\figmin\Library\il2cpp_cache\13859C2EC2F2F00D7260E21E0DCE9DB3.obj" /Fd"D:\workspace\figmin\Library\il2cpp_cache\13859C2EC2F2F00D7260E21E0DCE9DB3.pdb"
EnvArg key: PATH value: C:\Program Files (x86)\Windows Kits\10\bin\10.0.19041.0\x64;C:\Program Files (x86)\Windows Kits\10\bin\x64;C:\Program Files (x86)\Windows Kits\10\bin\10.0.19041.0\x86;C:\Program Files (x86)\Windows Kits\10\bin\x86;C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.29.30133\bin\HostX64\x64at Unity.IL2CPP.Building.CppProgramBuilder.BuildAllCppFiles(IEnumerable
1 sourceFilesToCompile, IBuildStatisticsCollector statisticsCollector) at Unity.IL2CPP.Building.CppProgramBuilder.Build(IBuildStatistics& statistics) at il2cpp.Program.DoRun(String[] args, List1 foundAssemblies)
at il2cpp.Program.Run(String[] args, Boolean setInvariantCulture)
at il2cpp.Program.Main(String[] args)
stderr:Unhandled Exception: Unity.IL2CPP.Building.BuilderFailedException: TiltFiveCore.cpp
D:\workspace\figmin\Temp\StagingArea\Data\il2cppOutput\TiltFiveCore.cpp(593): error C2440: 'static_cast': cannot convert from 'int32_t *' to 'int32_t'
D:\workspace\figmin\Temp\StagingArea\Data\il2cppOutput\TiltFiveCore.cpp(593): note: There is no context in which this conversion is possible
D:\workspace\figmin\Temp\StagingArea\Data\il2cppOutput\TiltFiveCore.cpp(597): error C2440: 'static_cast': cannot convert from 'int32_t *' to 'int32_t'
D:\workspace\figmin\Temp\StagingArea\Data\il2cppOutput\TiltFiveCore.cpp(597): note: There is no context in which this conversion is possibleInvocation was: Executable: "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.29.30133\bin\HostX64\x64\cl.exe"
Arguments: "D:\workspace\figmin\Temp\StagingArea\Data\il2cppOutput\TiltFiveCore.cpp" /nologo /c /bigobj /W3 /Zi /EHs /GR- /Gy /utf-8 /wd4102 /wd4800 /wd4056 /wd4190 /wd4723 /wd4467 /wd4503 /wd4996 /wd4200 /Ox /Oi /Oy- /GS- /Gw /GF /Zo /MT /DNET_4_0 /DUNITY_AOT /DIL2CPP_MONO_DEBUGGER_DISABLED /DGC_NOT_DLL /DRUNTIME_IL2CPP /D_WIN32 /DWIN32 /DWIN32_THREADS /D_WINDOWS /DWINDOWS /D_UNICODE /DUNICODE /D_CRT_SECURE_NO_WARNINGS /D_SCL_SECURE_NO_WARNINGS /D_WINSOCK_DEPRECATED_NO_WARNINGS /DNOMINMAX /D_NDEBUG /DNDEBUG /DWINDOWS_SDK_BUILD_VERSION=19041 /DWINAPI_FAMILY=WINAPI_FAMILY_DESKTOP_APP /I"C:\Program Files\Unity\Hub\Editor\2019.4.18f1\Editor\Data\il2cpp\libil2cpp" /I"C:\Program Files\Unity\Hub\Editor\2019.4.18f1\Editor\Data\il2cpp\libil2cpp" /I"C:\Program Files\Unity\Hub\Editor\2019.4.18f1\Editor\Data\il2cpp\external\bdwgc\include" /I"C:\Program Files\Unity\Hub\Editor\2019.4.18f1\Editor\Data\il2cpp\external\xxHash" /I"D:\workspace\figmin\Temp\StagingArea\Data\il2cppOutput" /I"C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.29.30133\include" /I"C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\shared" /I"C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um" /I"C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\winrt" /I"C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\ucrt" /Fo"D:\workspace\figmin\Library\il2cpp_cache\13859C2EC2F2F00D7260E21E0DCE9DB3.obj" /Fd"D:\workspace\figmin\Library\il2cpp_cache\13859C2EC2F2F00D7260E21E0DCE9DB3.pdb"
EnvArg key: PATH value: C:\Program Files (x86)\Windows Kits\10\bin\10.0.19041.0\x64;C:\Program Files (x86)\Windows Kits\10\bin\x64;C:\Program Files (x86)\Windows Kits\10\bin\10.0.19041.0\x86;C:\Program Files (x86)\Windows Kits\10\bin\x86;C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.29.30133\bin\HostX64\x64at Unity.IL2CPP.Building.CppProgramBuilder.BuildAllCppFiles(IEnumerable
1 sourceFilesToCompile, IBuildStatisticsCollector statisticsCollector) at Unity.IL2CPP.Building.CppProgramBuilder.Build(IBuildStatistics& statistics) at il2cpp.Program.DoRun(String[] args, List1 foundAssemblies)
at il2cpp.Program.Run(String[] args, Boolean setInvariantCulture)
at il2cpp.Program.Main(String[] args)UnityEditorInternal.Runner.RunProgram (UnityEditor.Utils.Program p, System.String exe, System.String args, System.String workingDirectory, UnityEditor.Scripting.Compilers.CompilerOutputParserBase parser) (at <afa5b9a1793446ff98b741dc036c4c6e>:0)
UnityEditorInternal.Runner.RunManagedProgram (System.String exe, System.String args, System.String workingDirectory, UnityEditor.Scripting.Compilers.CompilerOutputParserBase parser, System.Action1[T] setupStartInfo) (at <afa5b9a1793446ff98b741dc036c4c6e>:0) UnityEditorInternal.IL2CPPBuilder.RunIl2CppWithArguments (System.Collections.Generic.List1[T] arguments, System.Action1[T] setupStartInfo, System.String workingDirectory) (at <afa5b9a1793446ff98b741dc036c4c6e>:0) UnityEditorInternal.IL2CPPBuilder.ConvertPlayerDlltoCpp (UnityEditor.Il2Cpp.Il2CppBuildPipelineData data, System.String outputDirectory, System.String workingDirectory, System.Boolean platformSupportsManagedDebugging) (at <afa5b9a1793446ff98b741dc036c4c6e>:0) UnityEditorInternal.IL2CPPBuilder.Run () (at <afa5b9a1793446ff98b741dc036c4c6e>:0) UnityEditorInternal.IL2CPPUtils.RunIl2Cpp (System.String stagingAreaData, UnityEditorInternal.IIl2CppPlatformProvider platformProvider, System.Action1[T] modifyOutputBeforeCompile, UnityEditor.RuntimeClassRegistry runtimeClassRegistry) (at <afa5b9a1793446ff98b741dc036c4c6e>:0)
DesktopStandalonePostProcessor.SetupStagingArea (UnityEditor.Modules.BuildPostProcessArgs args, System.Collections.Generic.HashSet`1[T] filesToNotOverwrite) (at <afa5b9a1793446ff98b741dc036c4c6e>:0)
DesktopStandalonePostProcessor.PostProcess (UnityEditor.Modules.BuildPostProcessArgs args) (at <afa5b9a1793446ff98b741dc036c4c6e>:0)
Rethrow as BuildFailedException: Exception of type 'UnityEditor.Build.BuildFailedException' was thrown.
DesktopStandalonePostProcessor.PostProcess (UnityEditor.Modules.BuildPostProcessArgs args) (at <afa5b9a1793446ff98b741dc036c4c6e>:0)
UnityEditor.Modules.DefaultBuildPostprocessor.PostProcess (UnityEditor.Modules.BuildPostProcessArgs args, UnityEditor.BuildProperties& outProperties) (at <afa5b9a1793446ff98b741dc036c4c6e>:0)
UnityEditor.PostprocessBuildPlayer.Postprocess (UnityEditor.BuildTargetGroup targetGroup, UnityEditor.BuildTarget target, System.String installPath, System.String companyName, System.String productName, System.Int32 width, System.Int32 height, UnityEditor.BuildOptions options, UnityEditor.RuntimeClassRegistry usedClassRegistry, UnityEditor.Build.Reporting.BuildReport report) (at <afa5b9a1793446ff98b741dc036c4c6e>:0)
UnityEngine.GUIUtility:ProcessEvent(Int32, IntPtr)
-
@Jonathan thanks that worked!
-
We're reviewing/testing a fix right now for IL2CPP.
The issue was related to an incorrect function signature in NativePlugin.cs that didn't cause an issue in Mono, but caused IL2CPP to generate code that wouldn't compile.
If you'd like to try a temporary fix yourself, you can try replacing
[DllImport(PLUGIN_LIBRARY)] public static extern int GetGameboardType( [MarshalAs(UnmanagedType.I4)] ref GameboardType gameboardType);with
[DllImport(PLUGIN_LIBRARY)] public static extern int GetGameboardType(ref GameboardType gameboardType);We are in the process of refactoring the managed to unmanaged interface, and the permanent fix will actually remove this function entirely.
-
Thanks for the stack trace Javier, we're looking more into this, raising urgency internally to get y'all unblocked asap