Linux error when run editor undefined symbol: ULinuxNativeDialogs_Initialize

Hi all!
When i run editor (compiled from github branch 4.8) s have next error:

/home/admin/Projects/UnrealEngine47/UnrealEngine/Engine/Binaries/Linux/UE4Editor: symbol lookup error: /home/admin/Projects/UnrealEngine47/UnrealEngine/Engine/Binaries/Linux/libUE4Editor-DesktopPlatform.so: undefined symbol: ULinuxNativeDialogs_Initialize

Delete stale libLND.so from Engine/Binaries/Linux. It was moved to a new location but unfortunately there’s no good way to delete it right now. I’ll probably add this to Setup.sh

Added: https://github.com/EpicGames/UnrealEngine/commit/783295f77dedbda89c9cf7590e25903dd979c630

Hi,

I’ve got the same issue, and remove libLND.so doesn’t seems to work. Here is the output:

./UE4Editor: symbol lookup error: /home/eloy/src/unreal/UnrealEngine/Engine/Binaries/Linux/libUE4Editor-DesktopPlatform.so: undefined symbol: ULinuxNativeDialogs_Initialize

I’m running Ubuntu 14.04.2 LTS and my current branch is 4.8.0-preview-3.

Regards.

Hi,

Try to start the editor this way: LD_PRELOAD={path of libLND.so} UE4Editor

libLND.so is located in Engine/Binaries/ThirdParty/LinuxNativeDialogs/Linux/x86_64-unknown-linux-gnu/libLND.so

There might be libLND.so in Engine/Binaries/Linux/, well this is not the lib you are looking for .

The actual problem is that there is a reference to method “ULinuxNativeDialogs_Initialize” in libUE4Editor-DesktopPlatform.so. The method is located in libLND.so, but for some reason libLND.so doesn’t load before libUE4Editor-DesktopPlatform.so. By adding libLND.so to LD_PRELOAD you make the OS to load libLND.so first.

Regards.

P.S. Sorry for bad English skills :wink: