Errors compiling v1.22 on UE4.27.2 and UE5.1

We’re trying to compile v1.22 and it’s giving us the attached compiling issues in the files. This is on UE 4.27.2. Are you able to help?
PS: Usually we do a clean build and that resolves the issue, but not this time. message(52) (1.8 KB)

Those are very strange errors. Can you walk us through exactly what you’re doing when you get these errors? Seeing more of the log may help as well.

@Kevin_Ring we have an older v1.18 and we’re trying to upgrade to v1.22 and then way we do this is: We delete the old plugin, copy the new plugin from github, and then we try to compile and these are the errors.

Seems like the issue is with some references. I use VS 2019 Version 16.11.21

@Kevin_Ring we tried updating VS to the latest 16.11.23 and still getting errors when building. Here’s the full log:
message(53) (2.2 KB)

Well if you look at CesiumRuntime.h, you can see that it uses a std::shared_ptr, but it is missing the include for the header file that includes that type, #include <memory>. So I’d start by adding that, and you’ll likely need to add other includes for other errors. I think this hasn’t been noticed until now because when Unreal compiles the entire CesiumRuntime project in one go, other source files include the necessary headers. But in your case, there’s that message at the top:

[Adaptive unity build] Excluded from CesiumRuntime unity file: Cesium3DTileset.cpp, CesiumCreditSystem.cpp, CesiumCustomVersion.cpp, CesiumEncodedMetadataUtility.cpp, CesiumGeoreference.cpp, CesiumGltfComponent.cpp, CesiumGltfPrimitiveComponent.cpp, CesiumIonRasterOverlay.cpp, CesiumLifetime.cpp, CesiumPolygonRasterOverlay.cpp, CesiumRasterOverlay.cpp, CesiumRuntime.cpp, CesiumSunSky.cpp, CesiumTextureUtility.cpp, CesiumTransforms.cpp, GeoTransforms.cpp, GlobeAwareDefaultPawn.cpp, SpdlogUnrealLoggerSink.cpp, UnrealTaskProcessor.cpp, VecMath.cpp

I don’t know why it’s excluding those files on your system, but if it didn’t, then your build would succeed. Have you perhaps edited those files? Are you using a source-code control system like Perforce that marks files read-only when they’re not checked out, but the files in that list are checked out and writable? The Unreal Build Tool might have special logic in that situation (but I don’t use Perforce or anything similar, so I’m not sure).