Released plugin v1.20.1 does not contain the artifacts for the UnrealEditor target

Hi,

It looks like the precompiled released version 1.20.1 for UE5.1 is missing the artifacts needed for the UnrealEditor target: https://github.com/CesiumGS/cesium-unreal/releases/download/v1.20.1-ue5/CesiumForUnreal-51-v1.20.1.zip

This causes the following error when packaging the project using a precompiled engine:

/UnrealEngine/UnrealEngine-5.1/UnrealEngine/Engine/Plugins/Marketplace/CesiumForUnreal/Source/CesiumRuntime/Public/CesiumSubLevel.h:7:10: fatal error: ‘CesiumSubLevel.generated.h’ file not found
#include “CesiumSubLevel.generated.h”
^~~~~~~~~~~~~~~~~~~~~~~~~~~~

Is this a known issue? Are there plans for fixing it in the future? Is there a workaround I can apply to unblock my work?

Thanks,
Suhair

It looks like you’re perhaps talking about Linux Editor binaries in particular? Linux Editor support was not added until v1.27.0:

However, it should possible to package a Linux game from a Windows system in earlier versions.

Kevin

Hi Kevin,

Sorry, for some reason, I don’t get alerted when someone gets back to my post. Thanks for your reply. I was waiting for it.

Basically, I was able to get Cesium v1.20.1 package properly on Linux with UE5.1 while building from source. Whenever we switched to using the precompiled engine, packaging Cesium keeps failing. One of the other errors I see is the following:

Missing precompiled manifest for ‘CesiumRuntime’, ‘/UnrealEngine/UnrealEngine-5.1/UnrealEngine/Engine/Plugins/Marketplace/CesiumForUnreal/Intermediate/Build/Linux/B4D820EA/UnrealGame/Development/CesiumRuntime/CesiumRuntime.precompiled’. This module was most likely not flagged for being included in a precompiled build - set ‘PrecompileForTargets = PrecompileTargetsType.Any;’ in CesiumRuntime.build.cs to override. If part of a plugin, also check if its ‘Type’ is correct.

Is this expected? Is overriding the build.cs the right way to do?
Thanks,
Suhair

Unfortunately, I don’t really know. You’re using a very old version of Cesium for Unreal on a platform it was never meant to support. I don’t think the PrecompileForTargets suggestion will help, but can’t hurt to try I guess.

One thing that comes to mind is that I’ve often seen packaging problems if the EngineVersion field in CesiumForUnreal.uplugin doesn’t match the actual version of your Unreal Engine. You’ll get a message at Editor startup, and if you tell it to load the plugin anyway then it will work fine. However, this mismatch also seems to cause problems during packaging, and the only way to fix those (as far as I know) is to update the version. v1.20.1 listed 5.0.0 as its target version, and you said you’re using 5.1, so updating it to 5.1.0 may solve the problem.

But mostly I recommend upgrading to the latest version of Unreal Engine and Cesium for Unreal. If you do that, Linux will be supported out of the box and you won’t have to built it yourself at all.