Linux build fails

Hello!

I`m experiencing an issue trying to build UE4Editor for the first time. I use the official “Build on Linux” manual step-by-step and source code from git 4.10.2-release branch. Trying any 4.10 branches gave me the same result. Setup procedure was completed successfully, all third-party binaries was downloaded, all packages was installed with Setup.sh. Makefile was generated by GenerateProjectFiles.sh without any visible issues also. Following lines was produced by build system (here is a fragment) invoked by the command make UE4Editor.

...
    there is no errors from the begining
...
[710/862] Compile SwarmInterface.generated.cpp
[711/862] Compile Module.DeviceProfileEditor.cpp
[712/862] Compile Module.TargetDeviceServices.cpp
[713/862] Compile Module.DataTableEditor.cpp
[714/862] Compile TargetDeviceServices.generated.cpp
[715/862] Compile Module.NewLevelDialog.cpp
[716/862] Compile WorldBrowser.generated.cpp
[717/862] Compile Module.WorldBrowser.cpp
[718/862] Compile Module.SizeMap.cpp
[719/862] Link UE4Editor
/home/nikolay/UnrealEngine/Engine/Binaries/Linux/libUE4Editor-UnrealEd.so: error: undefined reference to 'FFindInBlueprintSearchManager::AddOrUpdateBlueprintSearchMetadata(UBlueprint*, bool)'
/home/nikolay/UnrealEngine/Engine/Binaries/Linux/libUE4Editor-UnrealEd.so: error: undefined reference to 'FFindInBlueprintSearchManager::Get()'
/home/nikolay/UnrealEngine/Engine/Binaries/Linux/libUE4Editor-UnrealEd.so: error: undefined reference to 'ULandscapeHeightfieldCollisionComponent::GetPrivateStaticClass(wchar_t const*)'
/home/nikolay/UnrealEngine/Engine/Binaries/Linux/libUE4Editor-UnrealEd.so: error: undefined reference to 'UGeneralProjectSettings::GetPrivateStaticClass(wchar_t const*)'
/home/nikolay/UnrealEngine/Engine/Binaries/Linux/libUE4Editor-UnrealEd.so: error: undefined reference to 'ALandscapeProxy::GetPrivateStaticClass(wchar_t const*)'
/home/nikolay/UnrealEngine/Engine/Binaries/Linux/libUE4Editor-UnrealEd.so: error: undefined reference to 'UGameMapsSettings::GetGameDefaultMap()'
/home/nikolay/UnrealEngine/Engine/Binaries/Linux/libUE4Editor-UnrealEd.so: error: undefined reference to 'UGameMapsSettings::GetPrivateStaticClass(wchar_t const*)'
/home/nikolay/UnrealEngine/Engine/Binaries/Linux/libUE4Editor-UnrealEd.so: error: undefined reference to 'FRawMeshBulkData::LoadRawMesh(FRawMesh&)'
/home/nikolay/UnrealEngine/Engine/Binaries/Linux/libUE4Editor-UnrealEd.so: error: undefined reference to 'FRawMeshBulkData::SaveRawMesh(FRawMesh&)'
...
    + about 100 such undefined references to very different methods
...
/home/nikolay/UnrealEngine/Engine/Binaries/Linux/libUE4Editor-UnrealEd.so: error: undefined reference to 'UNiagaraScriptSourceBase::GetPrivateStaticClass(wchar_t const*)'
/home/nikolay/UnrealEngine/Engine/Binaries/Linux/libUE4Editor-UnrealEd.so: error: undefined reference to 'UNiagaraScriptSourceBase::UNiagaraScriptSourceBase(FVTableHelper&)'
clang: error: linker command failed with exit code 1 (use -v to see invocation)
[720/862] Link libUE4Editor-WorldBrowser.so
[721/862] Link libUE4Editor-GameplayAbilitiesEditor.so
[722/862] Link libUE4Editor-UMGEditor.so
[723/862] Link libUE4Editor-StaticMeshEditor.so
[724/862] Link libUE4Editor-BehaviorTreeEditor.so
[725/862] Link libUE4Editor-Matinee.so  

...
    there is no other errors from here
...
[860/862] Link libUE4Editor-AITestSuite.so
[861/862] Link libUE4Editor-UE4Game.so
-------- End Detailed Actions Stats -----------------------------------------------------------
ERROR: UBT ERROR: Failed to produce item: /home/nikolay/UnrealEngine/Engine/Binaries/Linux/UE4Editor
Total build time: 10046.69 seconds
Makefile:193: recipe for target 'UE4Editor' failed
make: *** [UE4Editor] Error 5

It seems to me that some source files, ./Engine/Source/Editor/Kismet/Private/FindInBlueprintManager.cpp for example (it is the file where the first undefined reference ‘FFindInBlueprintSearchManager::AddOrUpdateBlueprintSearchMetadata(UBlueprint*, bool)’ in the log above located), may not have been compiled before linking UE4Editor. As i am new to the UE4 development, the first question is how to find the real list of files to be compiled and linked? Is there any prerequisites to build UE4Editor?

My system is:

  • ASUS N76V laptop with 16Gb of memory and Nvidia GT750M video card
  • Debian Linux 8.3 x86_64 with multiarch
  • Nvidia driver 340.96-1
  • Mono 3.2.8 installed from debian repositories
  • Clang 3.5.0

UPD:

When I ran the command make UE4Editor ARGS=-verbose it produces following output (a meaningful part here):

[2016.02.05-17.23.04:345][  0]LogCompile: ScriptPlugin overhead was 0.000620 seconds
[2016.02.05-17.23.04:345][  0]LogCompile: Macroize time was 0.157161 seconds
[2016.02.05-17.23.04:345][  0]LogCompile: Tabify time was 0.529592 seconds
Reflection code generated for UE4Editor in 12.3514715 seconds
FileItem.ResetInfos() duration: 0.051983s
UE4Editor: Produced item "UE4Editor" doesn't exist.
UE4Editor: Produced item "UE4Editor.link" doesn't exist.
788 actions, 2 outdated and requested actions
Performing 2 actions (5 in parallel)
Executing: /usr/bin/clang++  -rdynamic -Wl,--unresolved-symbols=ignore-in-shared-libs -Wl,-rpath=${ORIGIN} -Wl,-rpath-link=${ORIGIN} -Wl,-rpath=${ORIGIN}/../../../Engine/Binaries/Linux -Wl,-rpath=${ORIGIN}/.. -Wl,-rpath=${ORIGIN}/../../../Engine/Binaries/ThirdParty/ICU/icu4c-53_1/Linux/x86_64-unknown-linux-gnu -Wl,-rpath=${ORIGIN}/../../../Engine/Binaries/ThirdParty/LinuxNativeDialogs/Linux/x86_64-unknown-linux-gnu -o "/home/nikolay/Downloads/UE4/UnrealEngine/Engine/Binaries/Linux/UE4Editor" -Wl,@"/home/nikolay/Downloads/UE4/UnrealEngine/Engine/Intermediate/Build/Linux/x86_64-unknown-linux-gnu/UE4Editor/Development/UE4Editor.response" -Wl,-rpath-link="/home/nikolay/Downloads/UE4/UnrealEngine/Engine/Binaries/Linux" -L"/home/nikolay/Downloads/UE4/UnrealEngine/Engine/Binaries/Linux" -Wl,--start-group -lpthread -ldl -lUE4Editor-Core -lUE4Editor-CoreUObject -lUE4Editor-Engine -lUE4Editor-InputCore -lUE4Editor-MediaAssets -lUE4Editor-MoviePlayer -lUE4Editor-Networking -lUE4Editor-PakFile -lUE4Editor-Projects -lUE4Editor-RenderCore -lUE4Editor-RHI -lUE4Editor-SandboxFile -lUE4Editor-Serialization -lUE4Editor-ShaderCore -lUE4Editor-Slate -lUE4Editor-SlateCore -lUE4Editor-Sockets -lUE4Editor-HeadMountedDisplay -lUE4Editor-NetworkFile -lUE4Editor-StreamingFile -lUE4Editor-AutomationWorker -lUE4Editor-SourceControl -lUE4Editor-UnrealEd -lUE4Editor-DesktopPlatform -lUE4Editor-SessionServices -lrt -lm -Wl,--end-group -Wl,--version-script="/home/nikolay/Downloads/UE4/UnrealEngine/Engine/Intermediate/Build/Linux/x86_64-unknown-linux-gnu/UE4Editor/Development/remove-sym.ldscript"
[1/2] Link UE4Editor
/home/nikolay/Downloads/UE4/UnrealEngine/Engine/Binaries/Linux/libUE4Editor-UnrealEd.so: error: undefined reference to 'FFindInBlueprintSearchManager::AddOrUpdateBlueprintSearchMetadata(UBlueprint*, bool)'
/home/nikolay/Downloads/UE4/UnrealEngine/Engine/Binaries/Linux/libUE4Editor-UnrealEd.so: error: undefined reference to 'FFindInBlueprintSearchManager::Get()'
/home/nikolay/Downloads/UE4/UnrealEngine/Engine/Binaries/Linux/libUE4Editor-UnrealEd.so: error: undefined reference to 'FJsonObject::SetField(FString const&, TSharedPtr<FJsonValue, (ESPMode)0> const&)'
/home/nikolay/Downloads/UE4/UnrealEngine/Engine/Binaries/Linux/libUE4Editor-UnrealEd.so: error: undefined reference to 'FJsonValue::AsObject() const'
/home/nikolay/Downloads/UE4/UnrealEngine/Engine/Binaries/Linux/libUE4Editor-UnrealEd.so: error: undefined reference to 'FJsonObject::GetStringField(FString const&) const'
/home/nikolay/Downloads/UE4/UnrealEngine/Engine/Binaries/Linux/libUE4Editor-UnrealEd.so: error: undefined reference to 'UGeneralProjectSettings::GetPrivateStaticClass(wchar_t const*)'
/home/nikolay/Downloads/UE4/UnrealEngine/Engine/Binaries/Linux/libUE4Editor-UnrealEd.so: error: undefined reference to 'ALandscapeProxy::GetPrivateStaticClass(wchar_t const*)'

So, finally, the following command in verbose mode /usr/bin/clang++ -rdynamic -Wl,–unresolved-symbols=ignore-in-shared-libs -Wl,-rpath=${ORIGIN} -Wl,-rpath-link=${ORIGIN} -Wl,-rpath=${ORIGIN}/…/…/…/Engine/Binaries/Linux -Wl,-rpath=${ORIGIN}/… -Wl,-rpath=${ORIGIN}/…/…/…/Engine/Binaries/ThirdParty/ICU/icu4c-53_1/Linux/x86_64-unknown-linux-gnu -Wl,-rpath=${ORIGIN}/…/…/…/Engine/Binaries/ThirdParty/LinuxNativeDialogs/Linux/x86_64-unknown-linux-gnu -o “/home/nikolay/Downloads/UE4/UnrealEngine/Engine/Binaries/Linux/UE4Editor” -Wl,@“/home/nikolay/Downloads/UE4/UnrealEngine/Engine/Intermediate/Build/Linux/x86_64-unknown-linux-gnu/UE4Editor/Development/UE4Editor.response” -Wl,-rpath-link=“/home/nikolay/Downloads/UE4/UnrealEngine/Engine/Binaries/Linux” -L"/home/nikolay/Downloads/UE4/UnrealEngine/Engine/Binaries/Linux" -Wl,–start-group -lpthread -ldl -lUE4Editor-Core -lUE4Editor-CoreUObject -lUE4Editor-Engine -lUE4Editor-InputCore -lUE4Editor-MediaAssets -lUE4Editor-MoviePlayer -lUE4Editor-Networking -lUE4Editor-PakFile -lUE4Editor-Projects -lUE4Editor-RenderCore -lUE4Editor-RHI -lUE4Editor-SandboxFile -lUE4Editor-Serialization -lUE4Editor-ShaderCore -lUE4Editor-Slate -lUE4Editor-SlateCore -lUE4Editor-Sockets -lUE4Editor-HeadMountedDisplay -lUE4Editor-NetworkFile -lUE4Editor-StreamingFile -lUE4Editor-AutomationWorker -lUE4Editor-SourceControl -lUE4Editor-UnrealEd -lUE4Editor-DesktopPlatform -lUE4Editor-SessionServices -lrt -lm -Wl,–end-group -Wl,–version-script=“/home/nikolay/Downloads/UE4/UnrealEngine/Engine/Intermediate/Build/Linux/x86_64-unknown-linux-gnu/UE4Editor/Development/remove-sym.ldscript” -v produces following output:

Debian clang version 3.5.0-10 (tags/RELEASE_350/final) (based on LLVM 3.5.0)
Target: x86_64-pc-linux-gnu
Thread model: posix
Found candidate GCC installation: /usr/bin/../lib/gcc/i586-linux-gnu/4.8
Found candidate GCC installation: /usr/bin/../lib/gcc/i586-linux-gnu/4.8.4
Found candidate GCC installation: /usr/bin/../lib/gcc/i586-linux-gnu/4.9
Found candidate GCC installation: /usr/bin/../lib/gcc/i586-linux-gnu/4.9.2
Found candidate GCC installation: /usr/bin/../lib/gcc/x86_64-linux-gnu/4.8
Found candidate GCC installation: /usr/bin/../lib/gcc/x86_64-linux-gnu/4.8.4
Found candidate GCC installation: /usr/bin/../lib/gcc/x86_64-linux-gnu/4.9
Found candidate GCC installation: /usr/bin/../lib/gcc/x86_64-linux-gnu/4.9.2
Found candidate GCC installation: /usr/lib/gcc/i586-linux-gnu/4.8
Found candidate GCC installation: /usr/lib/gcc/i586-linux-gnu/4.8.4
Found candidate GCC installation: /usr/lib/gcc/i586-linux-gnu/4.9
Found candidate GCC installation: /usr/lib/gcc/i586-linux-gnu/4.9.2
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.8
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.8.4
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.9
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.9.2
Selected GCC installation: /usr/bin/../lib/gcc/x86_64-linux-gnu/4.9
Candidate multilib: .;@m64
Candidate multilib: 32;@m32
Candidate multilib: x32;@mx32
Selected multilib: .;@m64
 "/usr/bin/ld" -export-dynamic --hash-style=both --build-id --eh-frame-hdr -m elf_x86_64 -dynamic-linker /lib64/ld-linux-x86-64.so.2 -o /home/nikolay/Downloads/UE4/UnrealEngine/Engine/Binaries/Linux/UE4Editor /usr/bin/../lib/gcc/x86_64-linux-gnu/4.9/../../../x86_64-linux-gnu/crt1.o /usr/bin/../lib/gcc/x86_64-linux-gnu/4.9/../../../x86_64-linux-gnu/crti.o /usr/bin/../lib/gcc/x86_64-linux-gnu/4.9/crtbegin.o -L/home/nikolay/Downloads/UE4/UnrealEngine/Engine/Binaries/Linux -L/usr/bin/../lib/gcc/x86_64-linux-gnu/4.9 -L/usr/bin/../lib/gcc/x86_64-linux-gnu/4.9/../../../x86_64-linux-gnu -L/lib/x86_64-linux-gnu -L/lib/../lib64 -L/usr/lib/x86_64-linux-gnu -L/usr/bin/../lib/gcc/x86_64-linux-gnu/4.9/../../.. -L/usr/lib/llvm-3.5/bin/../lib -L/lib -L/usr/lib --unresolved-symbols=ignore-in-shared-libs -rpath= -rpath-link= -rpath=/../../../Engine/Binaries/Linux -rpath=/.. -rpath=/../../../Engine/Binaries/ThirdParty/ICU/icu4c-53_1/Linux/x86_64-unknown-linux-gnu -rpath=/../../../Engine/Binaries/ThirdParty/LinuxNativeDialogs/Linux/x86_64-unknown-linux-gnu @/home/nikolay/Downloads/UE4/UnrealEngine/Engine/Intermediate/Build/Linux/x86_64-unknown-linux-gnu/UE4Editor/Development/UE4Editor.response -rpath-link=/home/nikolay/Downloads/UE4/UnrealEngine/Engine/Binaries/Linux --start-group -lpthread -ldl -lUE4Editor-Core -lUE4Editor-CoreUObject -lUE4Editor-Engine -lUE4Editor-InputCore -lUE4Editor-MediaAssets -lUE4Editor-MoviePlayer -lUE4Editor-Networking -lUE4Editor-PakFile -lUE4Editor-Projects -lUE4Editor-RenderCore -lUE4Editor-RHI -lUE4Editor-SandboxFile -lUE4Editor-Serialization -lUE4Editor-ShaderCore -lUE4Editor-Slate -lUE4Editor-SlateCore -lUE4Editor-Sockets -lUE4Editor-HeadMountedDisplay -lUE4Editor-NetworkFile -lUE4Editor-StreamingFile -lUE4Editor-AutomationWorker -lUE4Editor-SourceControl -lUE4Editor-UnrealEd -lUE4Editor-DesktopPlatform -lUE4Editor-SessionServices -lrt -lm --end-group --version-script=/home/nikolay/Downloads/UE4/UnrealEngine/Engine/Intermediate/Build/Linux/x86_64-unknown-linux-gnu/UE4Editor/Development/remove-sym.ldscript -lstdc++ -lm -lgcc_s -lgcc -lc -lgcc_s -lgcc /usr/bin/../lib/gcc/x86_64-linux-gnu/4.9/crtend.o /usr/bin/../lib/gcc/x86_64-linux-gnu/4.9/../../../x86_64-linux-gnu/crtn.o
/home/nikolay/Downloads/UE4/UnrealEngine/Engine/Binaries/Linux/libUE4Editor-UnrealEd.so: error: undefined reference to 'FFindInBlueprintSearchManager::AddOrUpdateBlueprintSearchMetadata(UBlueprint*, bool)'
/home/nikolay/Downloads/UE4/UnrealEngine/Engine/Binaries/Linux/libUE4Editor-UnrealEd.so: error: undefined reference to 'FFindInBlueprintSearchManager::Get()'
/home/nikolay/Downloads/UE4/UnrealEngine/Engine/Binaries/Linux/libUE4Editor-UnrealEd.so: error: undefined reference to 'FJsonObject::SetField(FString const&, TSharedPtr<FJsonValue, (ESPMode)0> const&)'
/home/nikolay/Downloads/UE4/UnrealEngine/Engine/Binaries/Linux/libUE4Editor-UnrealEd.so: error: undefined reference to 'FJsonValue::AsObject() const'
/home/nikolay/Downloads/UE4/UnrealEngine/Engine/Binaries/Linux/libUE4Editor-UnrealEd.so: error: undefined reference to 'FJsonObject::GetStringField(FString const&) const'
/home/nikolay/Downloads/UE4/UnrealEngine/Engine/Binaries/Linux/libUE4Editor-UnrealEd.so: error: undefined reference to 'UGeneralProjectSettings::GetPrivateStaticClass(wchar_t const*)'
/home/nikolay/Downloads/UE4/UnrealEngine/Engine/Binaries/Linux/libUE4Editor-UnrealEd.so: error: undefined reference to 'ALandscapeProxy::GetPrivateStaticClass(wchar_t const*)'
/home/nikolay/Downloads/UE4/UnrealEngine/Engine/Binaries/Linux/libUE4Editor-UnrealEd.so: error: undefined reference to 'UGameMapsSettings::GetGameDefaultMap()'

… and above mentioned errors follows. What does it mean?

Ok, I don`t know what causes errors above, but I built the editor and other applications in clean debian stable chroot on my machine and it is working nice in the main environment. I suppose that it is due to some developer packages installed in my system.

If you are running 32-bit Linux kernel you may run into the following during linking of test_shell or chrome:

/usr/bin/ld: fatal error: pthread_create failed: Resource temporarily unavailable
To get around this do not use the gold linker. There are reports of this from Ubuntu running on both vmware and parallels.

hadoop training in chennai | i informatica training in chenna| aws training in chennai

I did free Debian Jesse builds for Pony using llvm 3.7 package and llvm 3.8 package and had no issue with either debug or release builds.

Which Jesse are you using?

Note, I started from a completely clean Jesse install and followed the steps that are waiting to be merged into master via PR 650. Java training in chennai | Android training in chennai | Oracle dba Training in Chennai | Python Training in chennai