C++ Unresolved External Symbol - UE4

I am currently trying to build my project but i get hit with the following error:

unresolved external symbol __imp_EOS_ProductUserId_FromString referenced in function "private: void __cdecl UEOS_PlayerReports_GameInstance::ReportPlayer(class FString,class FString,class FString)" (?ReportPlayer@UEOS_PlayerReports_GameInstance@@AEAAXVFString@@00@Z)

unresolved external symbol __imp_EOS_Reports_SendPlayerBehaviorReport referenced in function "private: void __cdecl UEOS_PlayerReports_GameInstance::ReportPlayer(class FString,class FString,class FString)" (?ReportPlayer@UEOS_PlayerReports_GameInstance@@AEAAXVFString@@00@Z

What is the header definition of ReportPlayer? is it a BlueprintNativeEvent? If so you might be missing

void UEOS_PlayerReports_GameInstance::ReportPlayer_Implementation(class FString,class FString,class FString){
// Your code here
}

inside of your EOS_PlayerReports_GameInstance.cpp file

That didn’t work for me. Here is my .h (header file) code


#pragma once

#include "CoreMinimal.h"
#include "Engine/GameInstance.h"
#include "eos_reports.h"
#include "eos_reports_types.h"
#include "OnlineSubsystem.h"
#include "OnlineSubsystemUtils.h"
#include "EOS_PlayerReports_GameInstance.generated.h"


/**
 * 
 */
UCLASS()
class GAMEY_SNG_API UEOS_PlayerReports_GameInstance : public UGameInstance
{
	GENERATED_BODY()

		UFUNCTION(BlueprintCallable, Category = "Custom EOS Functions")
		void ReportPlayer(FString reporterPlayerId, FString reportedPlayerId, FString message);



	EOS_Reports_OnSendPlayerBehaviorReportCompleteCallback SendReportFuncCallback();
	
};

and my c++ file code

#include "EOS_PlayerReports_GameInstance.h"
#include "OnlineSubsystem.h"
#include "OnlineSubsystemUtils.h"
#include "eos_reports.h"
#include "eos_reports_types.h"
#include "eos_base.h"


void UEOS_PlayerReports_GameInstance::ReportPlayer(class FString reportedPlayerId, class FString reporterPlayerId, class FString message)
{
	const IOnlineSubsystem* SubsystemRef = Online::GetSubsystem(this->GetWorld());

	EOS_Reports_SendPlayerBehaviorReportOptions ReportOptions;

	// Set API version and user IDs
	ReportOptions.ApiVersion = EOS_REPORTS_SENDPLAYERBEHAVIORREPORT_API_LATEST;
	ReportOptions.ReporterUserId = EOS_ProductUserId_FromString(TCHAR_TO_UTF8(*reporterPlayerId));
	ReportOptions.ReportedUserId = EOS_ProductUserId_FromString(TCHAR_TO_UTF8(*reportedPlayerId));
	ReportOptions.Message = TCHAR_TO_UTF8(*message);

	
	EOS_Reports_SendPlayerBehaviorReport(NULL, &ReportOptions, this, SendReportFuncCallback());

}



EOS_Reports_OnSendPlayerBehaviorReportCompleteCallback UEOS_PlayerReports_GameInstance::SendReportFuncCallback()
{
	return EOS_Reports_OnSendPlayerBehaviorReportCompleteCallback EOS_CALL();
}

in you build file do you have the modules needed to run EOS added?

PublicDependencyModuleNames.AddRange(new string[] { "Core", "CoreUObject", "Engine", "InputCore" ,"OnlineSubsystemEOS", "OnlineSubsystem", "OnlineSubsystemUtils" });

Edit: Also delegates should begin with F. It’s enforced in later versions of unreal, not sure about UE4, but it does trigger an error on compile.

Yes. I do have the modules added to the *.build.cs file

Edit: It says the file is located at <game_name_folder>/Intermediate/Project Files and when i go looking there i don’t see the .cpp.obj file - would that be the cause of the error @3dRaven