Windows build fails

Hi all

I’m using Unity 2020.1.3f1

today something weird happened in my project. my visual studio 2019 enterprise edition got messed up so I lost the attach button, but I can still go to edit → attach to unity

also when I’m trying to build a windows version I’m getting the following error

Failed running D:\Program Files\Unity\Hub\2020.1.3f1\Editor\Data\il2cpp/build/deploy/netcoreapp3.0/il2cpp.exe --convert-to-cpp --emit-null-checks --enable-array-bounds-check --dotnetprofile="unityaot" --compile-cpp --libil2cpp-static --platform="WindowsDesktop" --architecture="x86" --configuration="Release" --outputpath="D:\Projects\TempName\Temp/StagingArea/Data\Native\GameAssembly.dll" --cachedirectory="D:\Projects\TempName\Assets\..\Library/il2cpp_cache" --baselib-directory="D:/Program Files/Unity/Hub/2020.1.3f1/Editor/Data/PlaybackEngines/WindowsStandaloneSupport\Variations\win32_development_il2cpp" --avoid-dynamic-library-copy --profiler-report --map-file-parser="D:/Program Files/Unity/Hub/2020.1.3f1/Editor/Data/Tools/MapFileParser/MapFileParser.exe" --directory=D:/Projects/TempName/Temp/StagingArea/Data/Managed --generatedcppdir=D:/Projects/TempName/Temp/StagingArea/Data/il2cppOutput

stdout:
Running il2cpp.exe in server GC mode.
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\Enterprise\VC\Tools\MSVC\14.27.29110\bin\HostX64\x86\link.exe
    Msvc Compiler Path: C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Tools\MSVC\14.27.29110\bin\HostX64\x86\cl.exe

    Output directory: D:\Projects\TempName\Temp\StagingArea\Data\Native
    Cache directory: D:\Projects\TempName\Library\il2cpp_cache
il2cpp.exe didn't catch exception: Unity.IL2CPP.Building.BuilderFailedException: Il2CppMetadataUsage.c
D:\Projects\TempName\Temp\StagingArea\Data\il2cppOutput\Il2CppMetadataUsage.c(1): fatal error C1853: 'D:\Projects\TempName\Library\il2cpp_cache\02B370D50421F710C193551E29D50693.pch' precompiled header file is from a different version of the compiler, or the precompiled header is C++ and you are using it from C (or vice versa)

Invocation was: Executable: "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Tools\MSVC\14.27.29110\bin\HostX64\x86\cl.exe"
Arguments: "D:\Projects\TempName\Temp\StagingArea\Data\il2cppOutput\Il2CppMetadataUsage.c" /nologo /c /bigobj /W3 /Z7 /EHs /GR- /Gy /utf-8 /wd4102 /wd4800 /wd4056 /wd4190 /wd4723 /wd4467 /wd4503 /wd4996 /wd4200 /wd4834 /Ox /Oi /Oy- /GS- /Gw /GF /Zo /Yupch-c.h /Fp"D:\Projects\TempName\Library\il2cpp_cache\02B370D50421F710C193551E29D50693.pch" /MT /DNET_4_0 /DUNITY_AOT /DIL2CPP_MONO_DEBUGGER_DISABLED /DGC_NOT_DLL /DRUNTIME_IL2CPP /DBASELIB_INLINE_NAMESPACE=il2cpp_baselib /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"D:\Program Files\Unity\Hub\2020.1.3f1\Editor\Data\il2cpp\libil2cpp" /I"D:\Program Files\Unity\Hub\2020.1.3f1\Editor\Data\il2cpp\libil2cpp" /I"D:\Program Files\Unity\Hub\2020.1.3f1\Editor\Data\il2cpp\external\bdwgc\include" /I"D:\Program Files\Unity\Hub\2020.1.3f1\Editor\Data\il2cpp\external\xxHash" /I"D:\Program Files\Unity\Hub\2020.1.3f1\Editor\Data\il2cpp\external\baselib\Include" /I"D:\Program Files\Unity\Hub\2020.1.3f1\Editor\Data\il2cpp\external\baselib\Platforms\Windows\Include" /I"D:\Program Files\Unity\Hub\2020.1.3f1\Editor\Data\il2cpp\libil2cpp\pch" /I"D:\Projects\TempName\Temp\StagingArea\Data\il2cppOutput" /I"C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Tools\MSVC\14.27.29110\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:\Projects\TempName\Library\il2cpp_cache\B48BDE91EF84C62C75A9815F6CA1B473.obj" /Fd"D:\Projects\TempName\Library\il2cpp_cache\B48BDE91EF84C62C75A9815F6CA1B473.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\Enterprise\VC\Tools\MSVC\14.27.29110\bin\HostX64\x64

   at Unity.IL2CPP.Building.CppProgramBuilder.BuildAllCppFiles(IEnumerable`1 sourceFilesToCompile, IBuildStatisticsCollector statisticsCollector)
   at Unity.IL2CPP.Building.CppProgramBuilder.Build(IBuildStatistics& statistics)
   at il2cpp.Compilation.CompilationDriver.Run(RuntimePlatform platform, BuildingOptions buildingOptions)
   at il2cpp.Program.DoRun(String[] args, RuntimePlatform platform, BuildingOptions buildingOptions)
   at il2cpp.Program.Run(String[] args, Boolean setInvariantCulture)
   at il2cpp.Program.Main(String[] args)
stderr:
Unhandled exception. Unity.IL2CPP.Building.BuilderFailedException: Il2CppMetadataUsage.c
D:\Projects\TempName\Temp\StagingArea\Data\il2cppOutput\Il2CppMetadataUsage.c(1): fatal error C1853: 'D:\Projects\TempName\Library\il2cpp_cache\02B370D50421F710C193551E29D50693.pch' precompiled header file is from a different version of the compiler, or the precompiled header is C++ and you are using it from C (or vice versa)

Invocation was: Executable: "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Tools\MSVC\14.27.29110\bin\HostX64\x86\cl.exe"
Arguments: "D:\Projects\TempName\Temp\StagingArea\Data\il2cppOutput\Il2CppMetadataUsage.c" /nologo /c /bigobj /W3 /Z7 /EHs /GR- /Gy /utf-8 /wd4102 /wd4800 /wd4056 /wd4190 /wd4723 /wd4467 /wd4503 /wd4996 /wd4200 /wd4834 /Ox /Oi /Oy- /GS- /Gw /GF /Zo /Yupch-c.h /Fp"D:\Projects\TempName\Library\il2cpp_cache\02B370D50421F710C193551E29D50693.pch" /MT /DNET_4_0 /DUNITY_AOT /DIL2CPP_MONO_DEBUGGER_DISABLED /DGC_NOT_DLL /DRUNTIME_IL2CPP /DBASELIB_INLINE_NAMESPACE=il2cpp_baselib /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"D:\Program Files\Unity\Hub\2020.1.3f1\Editor\Data\il2cpp\libil2cpp" /I"D:\Program Files\Unity\Hub\2020.1.3f1\Editor\Data\il2cpp\libil2cpp" /I"D:\Program Files\Unity\Hub\2020.1.3f1\Editor\Data\il2cpp\external\bdwgc\include" /I"D:\Program Files\Unity\Hub\2020.1.3f1\Editor\Data\il2cpp\external\xxHash" /I"D:\Program Files\Unity\Hub\2020.1.3f1\Editor\Data\il2cpp\external\baselib\Include" /I"D:\Program Files\Unity\Hub\2020.1.3f1\Editor\Data\il2cpp\external\baselib\Platforms\Windows\Include" /I"D:\Program Files\Unity\Hub\2020.1.3f1\Editor\Data\il2cpp\libil2cpp\pch" /I"D:\Projects\TempName\Temp\StagingArea\Data\il2cppOutput" /I"C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Tools\MSVC\14.27.29110\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:\Projects\TempName\Library\il2cpp_cache\B48BDE91EF84C62C75A9815F6CA1B473.obj" /Fd"D:\Projects\TempName\Library\il2cpp_cache\B48BDE91EF84C62C75A9815F6CA1B473.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\Enterprise\VC\Tools\MSVC\14.27.29110\bin\HostX64\x64

   at Unity.IL2CPP.Building.CppProgramBuilder.BuildAllCppFiles(IEnumerable`1 sourceFilesToCompile, IBuildStatisticsCollector statisticsCollector)
   at Unity.IL2CPP.Building.CppProgramBuilder.Build(IBuildStatistics& statistics)
   at il2cpp.Compilation.CompilationDriver.Run(RuntimePlatform platform, BuildingOptions buildingOptions)
   at il2cpp.Program.DoRun(String[] args, RuntimePlatform platform, BuildingOptions buildingOptions)
   at il2cpp.Program.Run(String[] args, Boolean setInvariantCulture)
   at il2cpp.Program.Main(String[] args)

UnityEngine.Debug:LogError(Object)
UnityEditorInternal.Runner:RunProgram(Program, String, String, String, CompilerOutputParserBase)
UnityEditorInternal.Runner:RunNetCoreProgram(String, String, String, CompilerOutputParserBase, Action`1)
UnityEditorInternal.IL2CPPBuilder:RunIl2CppWithArguments(List`1, Action`1, String)
UnityEditorInternal.IL2CPPBuilder:ConvertPlayerDlltoCpp(Il2CppBuildPipelineData, String, String, Boolean)
UnityEditorInternal.IL2CPPBuilder:Run()
UnityEditorInternal.IL2CPPUtils:RunIl2Cpp(String, IIl2CppPlatformProvider, Action`1, RuntimeClassRegistry)
DesktopStandalonePostProcessor:SetupStagingArea(BuildPostProcessArgs, HashSet`1)
DesktopStandalonePostProcessor:PostProcess(BuildPostProcessArgs)
UnityEditor.BuildPlayerWindow:BuildPlayerAndRun()

any ideas what’s wrong?
thanks in advance

Regarding that error message:

Workaround: Do a full rebuild or delete the PCH files to force the compiler to recreate them. (src)

thanks
Although deleted all PCH files didn’t work.
what worked for me was deleting the entire Library/il2cpp_cache folder

5 Likes

Deleting the entire Library/il2cpp_cache folder also worked for me.

Deleting the compiler-mentioned PCH file didn’t. The compiler said it couldn’t find it once I deleted it. Not being able to build was correlated in time (though maybe not causally related) with upgrading Visual Studio.

1 Like

Thanks for this. I got this error after upgrading to Unity.Entities 0.17. Deleting that il2cpp_cache folder worked for me too.

Heya QA, can you catch this error to send us some in-Unity guidance, mates?

Show us a popup with some options. “Delete cache and try again?”
#LessFeatsMoreFixes

1 Like

This one was driving me crazy for hours, even reinstalled Unity 2020 LT
“Deleting the entire Library/il2cpp_cache folder also worked for me” …and so for me.
Thanks

I also had this after a Visual Studio update (applied when closing) and “Deleting the entire Library/il2cpp_cache folder also worked for me”