Running UE 4.7.2 and VS2013 Community.
Whenever I try to create a new ChildActorComponent class in the editor, I get the following error message:
Failed to add class SmallShip. Failed to automatically hot reload the ‘Spaceships’ module.
The compiler log provides the following output:
Info Parsing headers for SpaceshipsEditor
Info Reflection code generated for SpaceshipsEditor
Info Performing 3 actions (4 in parallel)
Info SmallShip.cpp
Info Spaceships.generated.cpp
Info [3/3] Link UE4Editor-Spaceships-1041.dll
Info Creating library V:\Unreal Projects\Spaceships\Intermediate\Build\Win64\SpaceshipsEditor\Development\UE4Editor-Spaceships-1041.lib and object V:\Unreal Projects\Spaceships\Intermediate\Build\Win64\SpaceshipsEditor\Development\UE4Editor-Spaceships-1041.exp
Error SmallShip.cpp.obj : error LNK2001: unresolved external symbol "public: virtual void __cdecl UChildActorComponent::PostEditChangeProperty(struct FPropertyChangedEvent &)" (?PostEditChangeProperty@UChildActorComponent@@UEAAXAEAUFPropertyChangedEvent@@@Z)
Error Spaceships.generated.cpp.obj : error LNK2001: unresolved external symbol "public: virtual void __cdecl UChildActorComponent::PostEditChangeProperty(struct FPropertyChangedEvent &)" (?PostEditChangeProperty@UChildActorComponent@@UEAAXAEAUFPropertyChangedEvent@@@Z)
Error SmallShip.cpp.obj : error LNK2001: unresolved external symbol "public: virtual void __cdecl UChildActorComponent::PostEditUndo(void)" (?PostEditUndo@UChildActorComponent@@UEAAXXZ)
Error Spaceships.generated.cpp.obj : error LNK2001: unresolved external symbol "public: virtual void __cdecl UChildActorComponent::PostEditUndo(void)" (?PostEditUndo@UChildActorComponent@@UEAAXXZ)
Error SmallShip.cpp.obj : error LNK2001: unresolved external symbol "public: virtual void __cdecl UChildActorComponent::OnComponentCreated(void)" (?OnComponentCreated@UChildActorComponent@@UEAAXXZ)
Error Spaceships.generated.cpp.obj : error LNK2001: unresolved external symbol "public: virtual void __cdecl UChildActorComponent::OnComponentCreated(void)" (?OnComponentCreated@UChildActorComponent@@UEAAXXZ)
Error SmallShip.cpp.obj : error LNK2001: unresolved external symbol "public: virtual void __cdecl UChildActorComponent::OnComponentDestroyed(void)" (?OnComponentDestroyed@UChildActorComponent@@UEAAXXZ)
Error Spaceships.generated.cpp.obj : error LNK2001: unresolved external symbol "public: virtual void __cdecl UChildActorComponent::OnComponentDestroyed(void)" (?OnComponentDestroyed@UChildActorComponent@@UEAAXXZ)
Error SmallShip.cpp.obj : error LNK2001: unresolved external symbol "public: virtual void __cdecl UChildActorComponent::OnRegister(void)" (?OnRegister@UChildActorComponent@@UEAAXXZ)
Error Spaceships.generated.cpp.obj : error LNK2001: unresolved external symbol "public: virtual void __cdecl UChildActorComponent::OnRegister(void)" (?OnRegister@UChildActorComponent@@UEAAXXZ)
Error SmallShip.cpp.obj : error LNK2001: unresolved external symbol "public: virtual class FActorComponentInstanceData * __cdecl UChildActorComponent::GetComponentInstanceData(void)const " (?GetComponentInstanceData@UChildActorComponent@@UEBAPEAVFActorComponentInstanceData@@XZ)
Error Spaceships.generated.cpp.obj : error LNK2001: unresolved external symbol "public: virtual class FActorComponentInstanceData * __cdecl UChildActorComponent::GetComponentInstanceData(void)const " (?GetComponentInstanceData@UChildActorComponent@@UEBAPEAVFActorComponentInstanceData@@XZ)
Error SmallShip.cpp.obj : error LNK2001: unresolved external symbol "public: virtual class FName __cdecl UChildActorComponent::GetComponentInstanceDataType(void)const " (?GetComponentInstanceDataType@UChildActorComponent@@UEBA?AVFName@@XZ)
Error Spaceships.generated.cpp.obj : error LNK2001: unresolved external symbol "public: virtual class FName __cdecl UChildActorComponent::GetComponentInstanceDataType(void)const " (?GetComponentInstanceDataType@UChildActorComponent@@UEBA?AVFName@@XZ)
Error V:\Unreal Projects\Spaceships\Binaries\Win64\UE4Editor-Spaceships-1041.dll : fatal error LNK1120: 7 unresolved externals
Info -------- End Detailed Actions Stats -----------------------------------------------------------
Info ERROR: UBT ERROR: Failed to produce item: V:\Unreal Projects\Spaceships\Binaries\Win64\UE4Editor-Spaceships-1041.dll
Info Cumulative action seconds (8 processors): 0.00 building projects, 0.45 compiling, 0.00 creating app bundles, 0.00 generating debug info, 0.10 linking, 0.00 other
Info UBT execution time: 6.82 seconds
Any idea why the compiler is having trouble resolving those symbols? It looks like ChildActorComponent is part of the Engine module, and Engine is listed in my build file:
PublicDependencyModuleNames.AddRange(new string[] { "Core", "CoreUObject", "Engine", "InputCore" });