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?

2 Answers
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 3 months ago
0

I am still trying to figure out how to solve this problem

So, I need a build for Linux first of all, I created a docker container and launched an amazonLinux 2

I pre-installed all that I need (yum install make gcc gcc-c++ git and yum install cmake) then I copy it into my docker GameLift-Cpp-ServerSDK-UnrealPlugin-5.1.1 as was said in

*Build the Amazon GameLift C++ server SDK Unzip the Amazon GameLift plugin for Unreal Engine release package to extract two zip files:

amazon-gamelift-plugin-unreal-<>-sdk-<>.zip

GameLift-Cpp-ServerSDK-<>.zip.

Unzip these files.

Open the GameLift-Cpp-ServerSDK-<> folder, and then complete the following instructions for your platform: Linux or Microsoft Windows.

Linux Run the following commands:

mkdir out cd out cmake -DBUILD_FOR_UNREAL=1 .. make*

when I entered this command cmake -DBUILD_FOR_UNREAL=1 .. I get the Cmake error

bash-4.2# cmake -DBUILD_FOR_UNREAL=1 .. CMake Error: The source directory "/GameLift-Cpp-ServerSDK-UnrealPlugin-5.1.1/GameLiftServerSDK" does not appear to contain CMakeLists.txt.

I can not find any additional information about this problem or how to create aws-cpp-sdk-gamelift-server.so with more details for Linux

qpu3uk
answered 20 days ago
  • I've figured out what is wrong. I have looked for CMakeList.txt inside the plugin folder although I had to use the folder with SDK

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