Download

Problems setting up Epic online services in an Unreal Engine 4 project

I have been attempting to get the new Epic online services APK working in a UE4 project. When I add the header files and the .lib file to the project, Visual Studio does recognize the various functions in the APK. When I compile however I get a linker error stating fatal error LNK1120: 1 unresolved externals.

Right now I am just trying to initialize the SDK which needs to be completed before it can be used. Knowing a little about linker errors I’m guessing I’m not setting up the SDK properly in the project but since its so new there isn’t much help yet. My first thoughts are changing the build.cs file but I have no idea what to add there. I have been Googling around trying various things but haven’t got it working yet. Also there are no source files in the SDK, only header files. Any advice on getting the SDK working in a UE4 project, or general advice on adding an SDK to a UE4 project would be greatly appreciated.


EOS_InitializeOptions InitOptions;
InitOptions.ApiVersion = EOS_INITIALIZE_API_LATEST;
InitOptions.ProductName = TCHAR_TO_ANSI(*Options.ProductName);
InitOptions.ProductVersion = TCHAR_TO_ANSI(*Options.ProductVersion);
InitOptions.AllocateMemoryFunction = nullptr;` `InitOptions.ReallocateMemoryFunction = nullptr;
InitOptions.ReleaseMemoryFunction = nullptr;`
// This initializes the SDK and is where the linker error is coming from
EOS_EResult InitResult = EOS_Initialize(&InitOptions);

I found an email [EMAIL=“eos-inquiries@epicgames.com”]eos-inquiries@epicgames.com and got a response, however all they said was I need to setup the header files and the .lib file. When pressed for dong this in the build.cs they replied back saying basically they can’t provide any more help then what they already have. Here is what I am trying to do in the builb.cs file:


// this works without errors or warnings as this is the folder that I have the .h files
PublicIncludePaths.Add("EOS_SDK");
// this gives warning that it cant find the file even though it is there with the .h files
// all of the .h files and the .lib file are in EOS_SDK/
PublicAdditionalLibraries.Add("EOS_SDK/EOSSDK-Win64-Shipping.lib");

I’ve been working on an UE4 Plugin for the Epic Online Services, you can follow my progress on the forum, or jump straight to github for the project/plugin.

(Or use it to solve some of the problems you might be having :slight_smile: )