IMPOSSIBLE TO BUILD FOR RASPBERRY PI 2 (arm linux)

As title,

I downloaded the source from gith hub,
I followed instructions to cross compile from windows but results builds binaries always ask for opengl 3.2 (most of arm linux support opengl ES).

I think that i have to build a cross compile clang target scecifically for raspberry pi2 as additional step
But since it takes forever to compile I want to ask here first…

Has somebody here compiled and build for raspberry pi 2 successfully?

as alternative as someone tested android on raspberry pi 2 building?

as second alternative:
How do you build from github unreal engine for ubuntu to cross compile to linux arm??
(cross compile guide only explain how to from windows)

Linux on ARM isn’t a supported target, only x86 is.

no you can compile for linux on arm:

The Linux-ARM cross compile toolchain binaries can be downloaded from clang-3.5.0-arm.

what I asked is if I can cross compile to Linux Arm not using a windwos machine but using a Ubuntu machine.

Yes … but you would have to build the editor on Linux as this is what drives the cross-compilation.

Linux Support
Building On Linux
Running On Linux

So basically you need to get the Unreal Engine Source Code on your Linux machine and then build the entire Unreal Editor on Linux and run that. This would theoretically allow you to then compile on Linux using the Linux CLANG libraries.

yes this answer my third question in a way.

Anybody about the first bolded question?
I’m going install android 5.1 on raspberry pi 2 now and tried create a android sample project for that target…i’m gonna answer my second question on my own… :slight_smile:

so back to my third question:

must I rebuild from github this way:

1
$ git clone -b 4.9 https://github.com/EpicGames/UnrealEngine.git
2
$ # or if you are using ssh authentication:
3
$ # git clone -b 4.9 git@github.com:EpicGames/UnrealEngine.git
4
$ cd UnrealEngine
5
$ ./Setup.sh
6
$ ./GenerateProjectFiles.sh

but before point 6 download arm clang package ,put in path and change lines:


If you are using the Linux-ARM cross compile toolchain before running GenerateProjectFiles.bat below edit the following file in the UE4 source code:
.../UnrealEngine/Engine/Source/Programs/UnrealBuildTool/Linux/UEBuildLinux.cs
by commenting out the following line:
static private string DefaultArchitecture = "x86_64-unknown-linux-gnu";
and un-commenting the linux-arm architecture line just below it:
//static private string DefaultArchitecture = "arm-unknown-linux-gnueabihf";

(note this is windows procedure actually failing to produce opengl es arm linux executables for Raspberry pi 2)
?
OR

need I to add crosscompile targets globally on my linux distro? (I have Ubuntu and Arch) and then modify somehow the setup script?

ps:
Anyway I cant believe they have android target (linux kernel on arm basically) and not for fixed hardware SoCs like Odroid or Raspberry pi 2 still using linux kernel on arm …if you look into …/UnrealEngine/Engine/Source/Programs/UnrealBuildTool/Linux/UEBuildLinux.cs these lines are commented as "fix this " so at least they planned to give option in the future…

EDIT:
I want to be clear i have nothing against android,only i would like to build a game for raspberry pi2 using a “clean” os

finally I tested android building to get an answer to my second question.

Unreal Engine is not working with Arm linux at all.
there is no way to scale down the engine to most used arm linux cards like Raspberry or Odroid ect ect., you may (there is no evidence of that , no video ect) be successfull using Tegra … but this is based on speculation at this point .

ironically enough building an android sample with Unity worked , same hardware, same android version … :confused:
Waiting for their fix I suggest switch to Unity for your projects.

i havent attempted the build on linux ARM but the latest Rasbian for Raspberry Pi 2 has desktop OpenGL driver support which can be enabled in raspi-config from the command line. hope that helps.