C++ plugin packaging error problem

Hello,

I would like to package a plugin of mine with a c++ module inside, However I quite don’t understand why the packaging plugin fail on AsyncTask, since it’s a Core module, and I referenced it in the plugin build.cs.

Moreover, the plugin works fine in a new empty project and it’s making windows builds with no problem. am I missing something (I can’t find online anything related to Async module that wont compile on a plugin)?

Best regards,

Theo Bourille.

Here is the build error message:

UATHelper: Package Plugin Task (Windows): Using Parallel executor to run 3 action(s)
UATHelper: Package Plugin Task (Windows): ------ Building 3 action(s) started ------
UATHelper: Package Plugin Task (Windows): [1/3] Compile [x64] MarchingCubeDeformableMesh.cpp
UATHelper: Package Plugin Task (Windows): [2/3] Compile [x64] Module.MarchingCubeDeformableMesh.cpp
UATHelper: Package Plugin Task (Windows): Source\MarchingCubeDeformableMesh\MarchingCubeDeformableMeshCode\DeformableMeshBaseClass.h(98): error C2504: 'UDataAsset': base class undefined
UATHelper: Package Plugin Task (Windows): Source\MarchingCubeDeformableMesh\MarchingCubeDeformableMeshCode\DeformableMeshBaseClass.h(99): error C3646: 'Super': unknown override specifier
UATHelper: Package Plugin Task (Windows): Source\MarchingCubeDeformableMesh\MarchingCubeDeformableMeshCode\DeformableMeshBaseClass.h(99): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
UATHelper: Package Plugin Task (Windows): Source\MarchingCubeDeformableMesh\MarchingCubeDeformableMeshCode\DeformableMeshBaseClass.h(99): error C2440: 'return': cannot convert from 'UDeformationMeshDataAsset *' to 'UObject *'
UATHelper: Package Plugin Task (Windows): Source\MarchingCubeDeformableMesh\MarchingCubeDeformableMeshCode\DeformableMeshBaseClass.h(99): note: Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or parenthesized function-style cast
UATHelper: Package Plugin Task (Windows): Source\MarchingCubeDeformableMesh\MarchingCubeDeformableMeshCode\DeformableMeshBaseClass.h(280): error C2504: 'FNonAbandonableTask': base class undefined
UATHelper: Package Plugin Task (Windows): MarchingCubeDeformableMesh\Intermediate\Build\Win64\UnrealGame\Inc\MarchingCubeDeformableMesh\UHT\DeformableMeshBaseClass.gen.cpp(287): error C2039: 'StaticConfigName': is not a member of 'UDeformationMeshDataAsset'
UATHelper: Package Plugin Task (Windows): MarchingCubeDeformableMesh\Source\MarchingCubeDeformableMesh\MarchingCubeDeformableMeshCode\DeformableMeshBaseClass.h(98): note: see declaration of 'UDeformationMeshDataAsset'
UATHelper: Package Plugin Task (Windows): MarchingCubeDeformableMesh\Intermediate\Build\Win64\UnrealGame\Inc\MarchingCubeDeformableMesh\UHT\DeformableMeshBaseClass.gen.cpp(287): error C3861: 'StaticConfigName': identifier not found
UATHelper: Package Plugin Task (Windows): MarchingCubeDeformableMesh\Intermediate\Build\Win64\UnrealGame\Inc\MarchingCubeDeformableMesh\UHT\DeformableMeshBaseClass.gen.cpp(287): error C2039: 'AddReferencedObjects': is not a member of 'UDeformationMeshDataAsset'
UATHelper: Package Plugin Task (Windows): MarchingCubeDeformableMesh\Source\MarchingCubeDeformableMesh\MarchingCubeDeformableMeshCode\DeformableMeshBaseClass.h(98): note: see declaration of 'UDeformationMeshDataAsset'
UATHelper: Package Plugin Task (Windows): MarchingCubeDeformableMesh\Intermediate\Build\Win64\UnrealGame\Inc\MarchingCubeDeformableMesh\UHT\DeformableMeshBaseClass.gen.cpp(287): error C2065: 'AddReferencedObjects': undeclared identifier
UATHelper: Package Plugin Task (Windows): MarchingCubeDeformableMesh\Intermediate\Build\Win64\UnrealGame\Inc\MarchingCubeDeformableMesh\UHT\DeformableMeshBaseClass.gen.cpp(287): error C3083: 'Super': the symbol to the left of a '::' must be a type
UATHelper: Package Plugin Task (Windows): MarchingCubeDeformableMesh\Intermediate\Build\Win64\UnrealGame\Inc\MarchingCubeDeformableMesh\UHT\DeformableMeshBaseClass.gen.cpp(287): error C3083: 'WithinClass': the symbol to the left of a '::' must be a type
UATHelper: Package Plugin Task (Windows): MarchingCubeDeformableMesh\Intermediate\Build\Win64\UnrealGame\Inc\MarchingCubeDeformableMesh\UHT\DeformableMeshBaseClass.gen.cpp(422): error C2614: 'UDeformationMeshDataAsset': illegal member initialization: 'Super' is not a base or member
UATHelper: Package Plugin Task (Windows): MarchingCubeDeformableMesh\Intermediate\Build\Win64\UnrealGame\Inc\MarchingCubeDeformableMesh\UHT\DeformableMeshBaseClass.gen.cpp(423): error C2614: 'UDeformationMeshDataAsset': illegal member initialization: 'Super' is not a base or member
UATHelper: Package Plugin Task (Windows): [3/3] Compile [x64] DeformableMeshBaseClass.cpp
UATHelper: Package Plugin Task (Windows): MarchingCubeDeformableMesh\Source\MarchingCubeDeformableMesh\MarchingCubeDeformableMeshCode\DeformableMeshBaseClass.h(98): error C2504: 'UDataAsset': base class undefined
UATHelper: Package Plugin Task (Windows): MarchingCubeDeformableMesh\Source\MarchingCubeDeformableMesh\MarchingCubeDeformableMeshCode\DeformableMeshBaseClass.h(99): error C3646: 'Super': unknown override specifier
UATHelper: Package Plugin Task (Windows): MarchingCubeDeformableMesh\Source\MarchingCubeDeformableMesh\MarchingCubeDeformableMeshCode\DeformableMeshBaseClass.h(99): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
UATHelper: Package Plugin Task (Windows): MarchingCubeDeformableMesh\Source\MarchingCubeDeformableMesh\MarchingCubeDeformableMeshCode\DeformableMeshBaseClass.h(99): error C2440: 'return': cannot convert from 'UDeformationMeshDataAsset *' to 'UObject *'
UATHelper: Package Plugin Task (Windows): MarchingCubeDeformableMesh\Source\MarchingCubeDeformableMesh\MarchingCubeDeformableMeshCode\DeformableMeshBaseClass.h(99): note: Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or parenthesized function-style cast
UATHelper: Package Plugin Task (Windows): MarchingCubeDeformableMesh\Source\MarchingCubeDeformableMesh\MarchingCubeDeformableMeshCode\DeformableMeshBaseClass.h(280): error C2504: 'FNonAbandonableTask': base class undefined
UATHelper: Package Plugin Task (Windows): MarchingCubeDeformableMesh\Source\MarchingCubeDeformableMesh\MarchingCubeDeformableMeshCode\DeformableMeshBaseClass.cpp(36): error C2664: 'bool IsValid(const UObject *)': cannot convert argument 1 from 'UDeformationMeshDataAsset *' to 'const UObject *'
UATHelper: Package Plugin Task (Windows): MarchingCubeDeformableMesh\Source\MarchingCubeDeformableMesh\MarchingCubeDeformableMeshCode\DeformableMeshBaseClass.cpp(36): note: Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or parenthesized function-style cast
UATHelper: Package Plugin Task (Windows): E:\Programs\UE_5.4\Engine\Source\Runtime\CoreUObject\Public\UObject\Object.h(1795): note: see declaration of 'IsValid'
UATHelper: Package Plugin Task (Windows): MarchingCubeDeformableMesh\Source\MarchingCubeDeformableMesh\MarchingCubeDeformableMeshCode\DeformableMeshBaseClass.cpp(36): note: while trying to match the argument list '(UDeformationMeshDataAsset *)'
UATHelper: Package Plugin Task (Windows): MarchingCubeDeformableMesh\Source\MarchingCubeDeformableMesh\MarchingCubeDeformableMeshCode\DeformableMeshBaseClass.cpp(432): error C2664: 'bool IsValid(const UObject *)': cannot convert argument 1 from 'UDeformationMeshDataAsset *' to 'const UObject *'
UATHelper: Package Plugin Task (Windows): MarchingCubeDeformableMesh\Source\MarchingCubeDeformableMesh\MarchingCubeDeformableMeshCode\DeformableMeshBaseClass.cpp(432): note: Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or parenthesized function-style cast
UATHelper: Package Plugin Task (Windows): E:\Programs\UE_5.4\Engine\Source\Runtime\CoreUObject\Public\UObject\Object.h(1795): note: see declaration of 'IsValid'
UATHelper: Package Plugin Task (Windows): MarchingCubeDeformableMesh\Source\MarchingCubeDeformableMesh\MarchingCubeDeformableMeshCode\DeformableMeshBaseClass.cpp(432): note: while trying to match the argument list '(UDeformationMeshDataAsset *)'
UATHelper: Package Plugin Task (Windows): MarchingCubeDeformableMesh\Source\MarchingCubeDeformableMesh\MarchingCubeDeformableMeshCode\DeformableMeshBaseClass.cpp(462): error C2065: 'GEngine': undeclared identifier
UATHelper: Package Plugin Task (Windows): MarchingCubeDeformableMesh\Source\MarchingCubeDeformableMesh\MarchingCubeDeformableMeshCode\DeformableMeshBaseClass.cpp(498): error C2664: 'bool IsValid(const UObject *)': cannot convert argument 1 from 'UDeformationMeshDataAsset *' to 'const UObject *'
UATHelper: Package Plugin Task (Windows): MarchingCubeDeformableMesh\Source\MarchingCubeDeformableMesh\MarchingCubeDeformableMeshCode\DeformableMeshBaseClass.cpp(498): note: Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or parenthesized function-style cast
UATHelper: Package Plugin Task (Windows): E:\Programs\UE_5.4\Engine\Source\Runtime\CoreUObject\Public\UObject\Object.h(1795): note: see declaration of 'IsValid'
UATHelper: Package Plugin Task (Windows): MarchingCubeDeformableMesh\Source\MarchingCubeDeformableMesh\MarchingCubeDeformableMeshCode\DeformableMeshBaseClass.cpp(498): note: while trying to match the argument list '(UDeformationMeshDataAsset *)'
UATHelper: Package Plugin Task (Windows): MarchingCubeDeformableMesh\Source\MarchingCubeDeformableMesh\MarchingCubeDeformableMeshCode\DeformableMeshBaseClass.cpp(517): error C2065: 'GEngine': undeclared identifier
UATHelper: Package Plugin Task (Windows): MarchingCubeDeformableMesh\Source\MarchingCubeDeformableMesh\MarchingCubeDeformableMeshCode\DeformableMeshBaseClass.cpp(551): error C2065: 'GEngine': undeclared identifier
UATHelper: Package Plugin Task (Windows): MarchingCubeDeformableMesh\Source\MarchingCubeDeformableMesh\MarchingCubeDeformableMeshCode\DeformableMeshBaseClass.cpp(556): error C2065: 'GEngine': undeclared identifier
UATHelper: Package Plugin Task (Windows): MarchingCubeDeformableMesh\Source\MarchingCubeDeformableMesh\MarchingCubeDeformableMeshCode\DeformableMeshBaseClass.cpp(561): error C2065: 'GEngine': undeclared identifier
UATHelper: Package Plugin Task (Windows): MarchingCubeDeformableMesh\Source\MarchingCubeDeformableMesh\MarchingCubeDeformableMeshCode\DeformableMeshBaseClass.cpp(566): error C2065: 'GEngine': undeclared identifier
UATHelper: Package Plugin Task (Windows): MarchingCubeDeformableMesh\Source\MarchingCubeDeformableMesh\MarchingCubeDeformableMeshCode\DeformableMeshBaseClass.cpp(573): error C2664: 'bool IsValid(const UObject *)': cannot convert argument 1 from 'UDeformationMeshDataAsset *' to 'const UObject *'
UATHelper: Package Plugin Task (Windows): MarchingCubeDeformableMesh\Source\MarchingCubeDeformableMesh\MarchingCubeDeformableMeshCode\DeformableMeshBaseClass.cpp(573): note: Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or parenthesized function-style cast
UATHelper: Package Plugin Task (Windows): E:\Programs\UE_5.4\Engine\Source\Runtime\CoreUObject\Public\UObject\Object.h(1795): note: see declaration of 'IsValid'
UATHelper: Package Plugin Task (Windows): MarchingCubeDeformableMesh\Source\MarchingCubeDeformableMesh\MarchingCubeDeformableMeshCode\DeformableMeshBaseClass.cpp(573): note: while trying to match the argument list '(UDeformationMeshDataAsset *)'
UATHelper: Package Plugin Task (Windows): MarchingCubeDeformableMesh\Source\MarchingCubeDeformableMesh\MarchingCubeDeformableMeshCode\DeformableMeshBaseClass.cpp(579): error C2065: 'GEngine': undeclared identifier
UATHelper: Package Plugin Task (Windows): MarchingCubeDeformableMesh\Source\MarchingCubeDeformableMesh\MarchingCubeDeformableMeshCode\DeformableMeshBaseClass.cpp(586): error C2664: 'bool IsValid(const UObject *)': cannot convert argument 1 from 'UDeformationMeshDataAsset *' to 'const UObject *'
UATHelper: Package Plugin Task (Windows): MarchingCubeDeformableMesh\Source\MarchingCubeDeformableMesh\MarchingCubeDeformableMeshCode\DeformableMeshBaseClass.cpp(586): note: Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or parenthesized function-style cast
UATHelper: Package Plugin Task (Windows): E:\Programs\UE_5.4\Engine\Source\Runtime\CoreUObject\Public\UObject\Object.h(1795): note: see declaration of 'IsValid'
UATHelper: Package Plugin Task (Windows): MarchingCubeDeformableMesh\Source\MarchingCubeDeformableMesh\MarchingCubeDeformableMeshCode\DeformableMeshBaseClass.cpp(586): note: while trying to match the argument list '(UDeformationMeshDataAsset *)'
UATHelper: Package Plugin Task (Windows): MarchingCubeDeformableMesh\Source\MarchingCubeDeformableMesh\MarchingCubeDeformableMeshCode\DeformableMeshBaseClass.cpp(598): error C2065: 'GEngine': undeclared identifier
UATHelper: Package Plugin Task (Windows): MarchingCubeDeformableMesh\Source\MarchingCubeDeformableMesh\MarchingCubeDeformableMeshCode\DeformableMeshBaseClass.cpp(603): error C2065: 'GEngine': undeclared identifier
UATHelper: Package Plugin Task (Windows): MarchingCubeDeformableMesh\Source\MarchingCubeDeformableMesh\MarchingCubeDeformableMeshCode\DeformableMeshBaseClass.cpp(608): error C2065: 'GEngine': undeclared identifier
UATHelper: Package Plugin Task (Windows): MarchingCubeDeformableMesh\Source\MarchingCubeDeformableMesh\MarchingCubeDeformableMeshCode\DeformableMeshBaseClass.cpp(741): error C2664: 'bool IsValid(const UObject *)': cannot convert argument 1 from 'UDeformationMeshDataAsset *' to 'const UObject *'
UATHelper: Package Plugin Task (Windows): MarchingCubeDeformableMesh\Source\MarchingCubeDeformableMesh\MarchingCubeDeformableMeshCode\DeformableMeshBaseClass.cpp(741): note: Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or parenthesized function-style cast
UATHelper: Package Plugin Task (Windows): E:\Programs\UE_5.4\Engine\Source\Runtime\CoreUObject\Public\UObject\Object.h(1795): note: see declaration of 'IsValid'
UATHelper: Package Plugin Task (Windows): MarchingCubeDeformableMesh\Source\MarchingCubeDeformableMesh\MarchingCubeDeformableMeshCode\DeformableMeshBaseClass.cpp(741): note: while trying to match the argument list '(UDeformationMeshDataAsset *)'
UATHelper: Package Plugin Task (Windows): MarchingCubeDeformableMesh\Source\MarchingCubeDeformableMesh\MarchingCubeDeformableMeshCode\DeformableMeshBaseClass.cpp(755): error C2065: 'GEngine': undeclared identifier
UATHelper: Package Plugin Task (Windows): MarchingCubeDeformableMesh\Source\MarchingCubeDeformableMesh\MarchingCubeDeformableMeshCode\DeformableMeshBaseClass.cpp(776): error C2065: 'GEngine': undeclared identifier
UATHelper: Package Plugin Task (Windows): MarchingCubeDeformableMesh\Source\MarchingCubeDeformableMesh\MarchingCubeDeformableMeshCode\DeformableMeshBaseClass.cpp(789): error C2760: syntax error: 'FAsyncTask' was unexpected here; expected 'type specifier'
UATHelper: Package Plugin Task (Windows): MarchingCubeDeformableMesh\Source\MarchingCubeDeformableMesh\MarchingCubeDeformableMeshCode\DeformableMeshBaseClass.cpp(793): error C2059: syntax error: ')'
UATHelper: Package Plugin Task (Windows): Total time in Parallel executor: 3.30 seconds
UATHelper: Package Plugin Task (Windows): Total execution time: 5.32 seconds
UATHelper: Package Plugin Task (Windows): Took 5,37s to run dotnet.exe, ExitCode=6
UATHelper: Package Plugin Task (Windows): UnrealBuildTool failed. See log for more details. (C:\Users\tbour\AppData\Roaming\Unreal Engine\AutomationTool\Logs\E+Programs+UE_5.4\UBA-UnrealGame-Win64-Development.txt)
UATHelper: Package Plugin Task (Windows): AutomationTool executed for 0h 0m 48s
UATHelper: Package Plugin Task (Windows): AutomationTool exiting with ExitCode=6 (6)
UATHelper: Package Plugin Task (Windows): BUILD FAILED```