I’m trying to get UE4 running on Linux (Linux Mint 13.2) and have some problems.
I build the Editor after this Manual: A new, community-hosted Unreal Engine Wiki - Announcements - Unreal Engine Forums
The Editor is running just fine, but if I try to add a plugin for IDE support like it is described here: A new, community-hosted Unreal Engine Wiki - Announcements - Unreal Engine Forums I get a warning at startup in the console,
after which a popup appears with the message:
Plugin 'CodeLiteSourceCodeAccess' failed to load because module 'CodeLiteSourceCodeAccess' could not be loaded. There may be an operating system error or the module may not be properly set up.
After that the Editor closes.
The warning in the console is:
LogLinux:Warning: dlopen failed: /home/xxxxxx/Programme/UnrealEngine/Engine/Binaries/Linux/: cannot read file data: Is a directory
LogModuleManager:Warning: ModuleManager: Unable to load module '/home/xxxxxx/Programme/UnrealEngine/Engine/Binaries/Linux/' because the file couldn't be loaded by the OS.
I tried it with the CodeLite and the Qt plugin, always changed the LinuxEngine.ini like descibed in the wiki and tried to start UE4Editor from …/UnrealEngine and from …/UnrealEngine/Engine/Binaries/Linux.
Also I tried to start the editor with: “LD_LIBRARY_PATH=. ./UE4Editor” when i was in …/UnrealEngine/Engine/Binaries/Linux.
I would appreciate any help.
It is CodeLiteSourceCodeAccessor not CodeLiteSourceCodeAccess . if you want to use CodeLite ide use ue4.9 at least
So when you get the error:
“The game module ‘MyGame’ could not be loaded. There may be an operating system error or the module may not be properly set up.”
Means that there is a Windows DLL load error. (If you are not at windows, it is OS specific, but you need to figure it out yourself).
When you open your project in visual studio, you can pause the the debugger when the dialog appears. Unfortunately, this code is in core-Unreal, but luckily you can download the debug symbols as described here: https://answers.unrealengine.com/questions/77315/can-epic-release-the-pdb-files-for-each-official-e.html . In the main thread you see that the problem occurs (before the dialog) in the code:
LoadModulesForProject()->LoadLibraryW(Filename); in WindowsPlatformProcess.cpp. Unfortunately they don’t call GetLastError() to find out the exact problem. see suggestion here c++ - LoadLibraryW() failing to load DLL in System32 - Stack Overflow
Now to find out the which DLL is missing you must use the Windows Debugging tool GFLAGS GFlags - Windows drivers | Microsoft Docs. GFlags is included in Debugging Tools for Windows.
Again unfortunately nobody writes down a good manual how to use it. So these are the steps:
Assuming windows 10 (64-bit), and Windows debugging tools are installed. (I don’t know where to get windows debugging tools from. Maybe try Windows SDK archive - Windows app development)
After installing SDK, restart
Then click on the windows icon and type ‘GFLAGS’
Open “Global Flags (X64) - Desktop App”
Enable Show loader snaps in the “Global Flags” dialog in the “System Registry”-tab (second entry, topleft)
restart (Yes you must restart!)
Open visual studio with your unreal project .sln file.
Run it in debug mode (Developer Editor) (Win64)
When the error dialog comes click OK.
The application closes
Now in the visual studio, Go to the Output pane. And select: Show output from: “Debug”
Examine the last line of the output. Somewhere there will be an entry with ERROR in it. Mine read:
14b0:15ec @ 00131328 - LdrpSearchPath - RETURN: Status: 0xc0000135
14b0:15ec @ 00131328 - LdrpProcessWork - ERROR: Unable to load DLL: “clAmdFft.Runtime.dll”, Parent Module: “C:\Users\steven\Documents\Unreal Projects\Revaro 4.11\Binaries\Win64\UE4Editor-Revaro.dll”, Status: 0xc0000135
14b0:15ec @ 00131328 - LdrpLoadDllInternal - RETURN: Status: 0xc0000135
14b0:15ec @ 00131328 - LdrLoadDll - RETURN: Status: 0xc0000135
‘UE4Editor.exe’ (Win32): Unloaded ‘C:\Windows\System32\mfreadwrite.dll’
“clAmdFft.Runtime.dll” This is the DLL that is giving problems. Either install it, the filepath is valid and configured in the project, make sure it is not corrupt and the right version x86/x64.
In my case I added this library myself for the custom code I was using.
Now disable the GFLAGS again, because it will slow down your computer and restart.
Hi. According to your answer. I have found the dll file which caught the problem. However, I also realized that this dll is in my path: \project\Binaries\Win64\ControlCAN.dll.
I had it, but it was not included in my project lib. How should I fix it?
Confirming that this method works fine using the Windows 10 SDK
Installing the debugging tools was enough for me.
Wow, you are awesome! Thank you so much for this. I wasted several days to find the issue, and now i’ve found it within 15 minutes. THANK YOU!!!