CMakeLists.txt Missing - Gamelift C++ SDK for UE

0

I am installing the unreal engine C++ sdk. I am following the readme file. I am getting an error pertaining to the CMakeLists.txt missing when execuing this command: cmake -G "Visual Studio 17 2022" -DBUILD_FOR_UNREAL=1 ..

ERROR: CMake Error: The source directory "E:/UnrealEngine/FruskersAdventure/Plugins/GameLiftServerSDK" does not appear to contain CMakeLists.txt. Specify --help for usage, or press the help button on the CMake GUI.

I am confused. Is there a cmakelists file that should have been included in this sdk? Am I missing something?

1 Answer
1

Hi, to be honest, I am pretty new to the subject and can't tell you exactly why this doesn't work. But I can describe what worked for me, maybe this helps!!

Integrating the Gamelift Server SDK is a two step process, as described in this part of GameLift doc, which I followed along:

https://docs.aws.amazon.com/gamelift/latest/developerguide/integration-engines-setup-unreal.html

(1) You need the GameliftServerSDK for C++ and you build it in a separate directory from your UnrealProject Directory. I downloaded this from here https://aws.amazon.com/de/gamelift/getting-started/ I unpacked this in a separate folder, like: E:\AWS\GameLift\GameLift-Cpp-ServerSDK-5.1.0 In this subdir, I created another subdir: E:\AWS\GameLift\GameLift-Cpp-ServerSDK-5.1.0\cmake-build\ and opened CMD-Prompt in this subdir and excuted the documented cmake commands to build the cpp-server-sdk. You get aws-cpp-sdk-gamelift-server.dll and aws-cpp-sdk-gamelift-server.lib. If you want Debug-Info, you might grab aws-cpp-sdk-gamelift-server.pdb. In my case everything was generated into E:\AWS\GameLift\GameLift-Cpp-ServerSDK-5.1.0\cmake-build\gamelift-server-sdk\Release\ I'am on UE4 4.27.2 with VS2019 toolchain, but later versions should also work without issues.

(2) IMPORTANT: then you need the C++ Server SDK Plugin for Unreal, which I also downloaded here

https://aws.amazon.com/de/gamelift/getting-started/

It contains a subdir

E:\AWS\GameLift\GameLift-Cpp-ServerSDK-UnrealPlugin-5.1.0\GameLiftServerSDK\

which goes into the Plugin-Subdir of your UE4 Project Folder. You copy the .dll and .lib from step (1) into the subdir

E:\AWS\GameLift\GameLift-Cpp-ServerSDK-UnrealPlugin-5.1.0\GameLiftServerSDK\ThirdParty\GameLiftServerSDK\Win64\

in your case this would be

E:/UnrealEngine/FruskersAdventure/Plugins/GameLiftServerSDK/ThirdParty/GameLiftServerSDK/Win64/

Important: on this plugin directory, you don't apply the cmake-command, you only use the GenerateProjectFiles Toolchain from your UnrealEngine distribution.

For me, this worked without any issues!!

The Gamelift Server SDK Plugin is only server-side code, pretty sure, you will also need Client-Side logic... (Server with Client, pretty useles...) I can only recommend the UE4 GameLift Plugin: https://github.com/aws/amazon-gamelift-plugin-unreal

It contains ServerSide Logic and ClientSide Logic in one plugin, cleverly using the BuildTarget Ruleset from UBT, very smart, I learned a lot!!!

Good Luck and Kindest Regards, Ricky

profile picture
ricky
answered a month ago

You are not logged in. Log in to post an answer.

A good answer clearly answers the question and provides constructive feedback and encourages professional growth in the question asker.

Guidelines for Answering Questions