The engine path is hardcoded in FLinuxPlatformMisc
static const TCHAR* EngineDir()
which means we have to put my game project inside the unreal engine directory. Why does FLinuxPlatformMisc override FGenericPlatformMisc‘s EngineDir() function and provide LESS feature?
It does seem that that function call should not be there as none f the other derived platforms implement something similar, and it might have just been an oversight. If removing that function works for you, it might be a good idea to make a pull request on Github to have Epic implement the code change.
Hope that helps. Cheers,
For me, simply moving my project into unreal engine directory has solved my original problem. I just post the question for curious. I believe other people who have had this problem have moved their projects too. In fact I have not check if GenericPlatformMisc works fine on linux.
If I understand correctly, you’re having an issue with the project being recognized depending on where it is saved? It sounds like you are running into this issue Unreal Engine Issues and Bug Tracker (UE-5956) which has been fixed for 4.15. If this is not the issue you’re experiencing, please provide additional details about the problem to help me investigate locally.
No it’s not the same issue. UE-5956 is talking about Editor cannot find game project. My problem was dedicated game servers cannot find engine runtime. I’m not sure if standalone games have the same problem.
Steps to reproduce my problem:
Create a project outside the unreal engine folder.
Add a server build target.
Cook and compile the project.
Run the built server program.
See the server program crash with a message saying not found some config ini, which is actually sit inside the engine directory.
If you debug run the server program and step into it, you’ll see the directory mapping is not properly set in the very beginning.
And the reason is FLinuxPlatformMisc as in my first post.
Sorry for the late response. After discussing with other developers, a feature request has been entered about the overridden EngineDir() function which can be found here: Unreal Engine Issues and Bug Tracker (UE-43526) .