I'm currently making a plugin which needs to make use of the AssetDeleteModel. After I include AssetDeleteModel.h into my plugin's .cpp file, I've written this line in a function:
TSharedRef<FAssetDeleteModel> DeleteModel = MakeShareable(new FAssetDeleteModel(ObjectsToDelete));
In the editor there doesn't appear to be any syntax errors. However, upon compiling the code I get this error:
2>Plugin.cpp.obj : error LNK2019: unresolved external symbol "public: __cdecl FAssetDeleteModel::FAssetDeleteModel(class TArray<class UObject *,class FDefaultAllocator> const &)" (??0FAssetDeleteModel@@QEAA@AEBV?$TArray@PEAVUObject@@VFDefaultAllocator@@@@@Z) referenced in function "public: void __cdecl FPlugin::RemoveAsset(class FString const &)" (?RemoveAsset@FPlugin@@QEAAXAEBVFString@@@Z)
2>Plugin.cpp.obj : error LNK2019: unresolved external symbol "public: __cdecl FAssetDeleteModel::~FAssetDeleteModel(void)" (??1FAssetDeleteModel@@QEAA@XZ) referenced in function "public: void __cdecl SharedPointerInternals::DefaultDeleter<class FAssetDeleteModel>::operator()(class FAssetDeleteModel *)const " (??R?$DefaultDeleter@VFAssetDeleteModel@@@SharedPointerInternals@@QEBAXPEAVFAssetDeleteModel@@@Z)
I have a strong feeling this is due to some public dependency module not being included in my plugin's Build.cs file. I had a similiar error with JSON functions until I added "JSON" in my Build.cs file under "PublicDependencyModuleNames". Regardless, any information would be greatly appreciated.
Thank you for your time.
Nov 30 '15 at 09:26 PM
in C++ Programming