x

Search in
Sort by:

Question Status:

Search help

  • Simple searches use one or more words. Separate the words with spaces (cat dog) to search cat,dog or both. Separate the words with plus signs (cat +dog) to search for items that may contain cat but must contain dog.
  • You can further refine your search on the search results page, where you can search by keywords, author, topic. These can be combined with each other. Examples
    • cat dog --matches anything with cat,dog or both
    • cat +dog --searches for cat +dog where dog is a mandatory term
    • cat -dog -- searches for cat excluding any result containing dog
    • [cats] —will restrict your search to results with topic named "cats"
    • [cats] [dogs] —will restrict your search to results with both topics, "cats", and "dogs"

Office Holiday

Epic Games' offices will be on holiday from June 22nd to July 7th. During this period support will be limited. Our offices will reopen on Monday, July 8th. 

[Closed] Unable to cross-compile for Linux-ARM

Cross-compiling with clang 3.5 doesn't work. Here is tht output at link time for CrashReportClient-Linux-Development ; UE4Game will do the same.

 1>  [24/24] Link CrashReportClient-Linux-Development
 1>  D:/Unreal/UnrealEngine-release/UnrealEngine-release/Engine/Source/ThirdParty/SDL2/SDL-gui-backend/lib/Linux/arm-unknown-linux-gnueabihf/libSDL2.a(SDL_rpivideo.c.o): In function `RPI_CreateWindow':
 1>  /home/rcl/build/2015-05-01/SDL-gui-backend/src/video/raspberry/SDL_rpivideo.c:256: undefined reference to `vc_dispmanx_update_start'
 1>  /home/rcl/build/2015-05-01/SDL-gui-backend/src/video/raspberry/SDL_rpivideo.c:257: undefined reference to `vc_dispmanx_element_add'
 1>  /home/rcl/build/2015-05-01/SDL-gui-backend/src/video/raspberry/SDL_rpivideo.c:260: undefined reference to `vc_dispmanx_update_submit_sync'
 1>  D:/Unreal/UnrealEngine-release/UnrealEngine-release/Engine/Source/ThirdParty/SDL2/SDL-gui-backend/lib/Linux/arm-unknown-linux-gnueabihf/libSDL2.a(SDL_rpivideo.c.o): In function `RPI_VideoInit':
 1>  /home/rcl/build/2015-05-01/SDL-gui-backend/src/video/raspberry/SDL_rpivideo.c:151: undefined reference to `bcm_host_init'
 1>  /home/rcl/build/2015-05-01/SDL-gui-backend/src/video/raspberry/SDL_rpivideo.c:155: undefined reference to `graphics_get_display_size'
 1>  /home/rcl/build/2015-05-01/SDL-gui-backend/src/video/raspberry/SDL_rpivideo.c:178: undefined reference to `vc_dispmanx_display_open'
 1>  D:/Unreal/UnrealEngine-release/UnrealEngine-release/Engine/Source/ThirdParty/SDL2/SDL-gui-backend/lib/Linux/arm-unknown-linux-gnueabihf/libSDL2.a(SDL_rpimouse.c.o): In function `RPI_WarpMouseGlobal':
 1>  /home/rcl/build/2015-05-01/SDL-gui-backend/src/video/raspberry/SDL_rpimouse.c:231: undefined reference to `vc_dispmanx_update_start'
 1>  /home/rcl/build/2015-05-01/SDL-gui-backend/src/video/raspberry/SDL_rpimouse.c:233: undefined reference to `vc_dispmanx_rect_set'
 1>  /home/rcl/build/2015-05-01/SDL-gui-backend/src/video/raspberry/SDL_rpimouse.c:234: undefined reference to `vc_dispmanx_element_change_attributes'
 1>  /home/rcl/build/2015-05-01/SDL-gui-backend/src/video/raspberry/SDL_rpimouse.c:246: undefined reference to `vc_dispmanx_update_submit'
 1>  D:/Unreal/UnrealEngine-release/UnrealEngine-release/Engine/Source/ThirdParty/SDL2/SDL-gui-backend/lib/Linux/arm-unknown-linux-gnueabihf/libSDL2.a(SDL_rpimouse.c.o): In function `RPI_FreeCursor':
 1>  /home/rcl/build/2015-05-01/SDL-gui-backend/src/video/raspberry/SDL_rpimouse.c:192: undefined reference to `vc_dispmanx_update_start'
 1>  /home/rcl/build/2015-05-01/SDL-gui-backend/src/video/raspberry/SDL_rpimouse.c:194: undefined reference to `vc_dispmanx_element_remove'
 1>  /home/rcl/build/2015-05-01/SDL-gui-backend/src/video/raspberry/SDL_rpimouse.c:196: undefined reference to `vc_dispmanx_update_submit_sync'
 1>  /home/rcl/build/2015-05-01/SDL-gui-backend/src/video/raspberry/SDL_rpimouse.c:201: undefined reference to `vc_dispmanx_resource_delete'
 1>  D:/Unreal/UnrealEngine-release/UnrealEngine-release/Engine/Source/ThirdParty/SDL2/SDL-gui-backend/lib/Linux/arm-unknown-linux-gnueabihf/libSDL2.a(SDL_rpimouse.c.o): In function `RPI_ShowCursor':
 1>  /home/rcl/build/2015-05-01/SDL-gui-backend/src/video/raspberry/SDL_rpimouse.c:155: undefined reference to `vc_dispmanx_rect_set'
 1>  /home/rcl/build/2015-05-01/SDL-gui-backend/src/video/raspberry/SDL_rpimouse.c:156: undefined reference to `vc_dispmanx_rect_set'
 1>  /home/rcl/build/2015-05-01/SDL-gui-backend/src/video/raspberry/SDL_rpimouse.c:158: undefined reference to `vc_dispmanx_update_start'
 1>  /home/rcl/build/2015-05-01/SDL-gui-backend/src/video/raspberry/SDL_rpimouse.c:161: undefined reference to `vc_dispmanx_element_add'
 1>  /home/rcl/build/2015-05-01/SDL-gui-backend/src/video/raspberry/SDL_rpimouse.c:172: undefined reference to `vc_dispmanx_update_submit_sync'
 1>  /home/rcl/build/2015-05-01/SDL-gui-backend/src/video/raspberry/SDL_rpimouse.c:123: undefined reference to `vc_dispmanx_update_start'
 1>  /home/rcl/build/2015-05-01/SDL-gui-backend/src/video/raspberry/SDL_rpimouse.c:125: undefined reference to `vc_dispmanx_element_remove'
 1>  /home/rcl/build/2015-05-01/SDL-gui-backend/src/video/raspberry/SDL_rpimouse.c:127: undefined reference to `vc_dispmanx_update_submit_sync'
 1>  D:/Unreal/UnrealEngine-release/UnrealEngine-release/Engine/Source/ThirdParty/SDL2/SDL-gui-backend/lib/Linux/arm-unknown-linux-gnueabihf/libSDL2.a(SDL_rpimouse.c.o): In function `RPI_CreateCursor':
 1>  /home/rcl/build/2015-05-01/SDL-gui-backend/src/video/raspberry/SDL_rpimouse.c:81: undefined reference to `vc_dispmanx_resource_create'
 1>  /home/rcl/build/2015-05-01/SDL-gui-backend/src/video/raspberry/SDL_rpimouse.c:83: undefined reference to `vc_dispmanx_rect_set'
 1>  /home/rcl/build/2015-05-01/SDL-gui-backend/src/video/raspberry/SDL_rpimouse.c:90: undefined reference to `vc_dispmanx_resource_write_data'

I have no idea where this RPi stuff comes from, Iam not targetting Raspberry at all.

Product Version: UE 4.8
Tags:
more ▼

asked Jul 31 '15 at 12:39 PM in Packaging & Deployment

avatar image

StrangerGwenn
594 53 63 133

(comments are locked)
10|2000 characters needed characters left
Viewable by all users

The question has been closed Sep 04 '15 at 05:46 AM by StrangerGwenn for the following reason:

The question is answered, right answer was accepted


2 answers: sort voted first

Hey Gwenn-

I tried to setup cross-compile as well. I did not get the same errors you posted however it did not complete successfully. I have entered a report about this (Ue-19887) for further investigation.

Cheers

Doug Wilson

more ▼

answered Aug 11 '15 at 02:29 PM

avatar image StrangerGwenn Aug 12 '15 at 09:43 AM

Hi Dough, thanks for the update.

For the record I tried reproducing the process with clean source builds on the latest releases from Github :

  • 4.8.3 fails with the issue described ;

  • 4.9.0 fails with a different error.

Here is the build log for 4.9.3 when building UnrealPak.

 1>  [4/12] Compile Module.Json.cpp
 1>  In file included from F:\UnrealEngine-4.9.0-preview-3\Engine\Intermediate\Build\Linux\x86_64-unknown-linux-gnu\UnrealPak\Development\PakFile\Module.PakFile.cpp:2:
 1>  In file included from F:\UnrealEngine-4.9.0-preview-3\Engine\Source\Runtime\PakFile\Private\IPlatformFilePak.cpp:3:
 1>  In file included from F:\UnrealEngine-4.9.0-preview-3\Engine\Source\Runtime\PakFile\Private/PakFilePrivatePCH.h:5:
 1>  In file included from Runtime/Core/Public\Core.h:16:
 1>Runtime/Core/Public/HAL\PlatformIncludes.h(5,10): fatal error : 'new' file not found

The same thing happens with UE4.

 1>  [4/203] Compile UdpMessaging.generated.cpp
 1>  In file included from F:\UnrealEngine-4.9.0-preview-3\Engine\Intermediate\Build\Linux\x86_64-unknown-linux-gnu\UE4\Development\Renderer\RendererPrivate.h:4:
 1>  In file included from F:\UnrealEngine-4.9.0-preview-3\Engine\Source\Runtime\Renderer\Private\RendererPrivate.h:10:
 1>  In file included from Runtime/Engine/Public\Engine.h:9:
 1>  In file included from Runtime/Core/Public\Core.h:16:
 1>Runtime/Core/Public/HAL\PlatformIncludes.h(5,10): fatal error : 'new' file not found

I'm currently evaulating the Unreal Engine for projects on Linux-ARM ; is this target supported ?

Thanks,

avatar image RCL STAFF Aug 12 '15 at 05:49 PM

The "new" file error looks unrelated, please make sure that you are using ARM cross toolchain as the sysroot will be different.

I fixed the ARM builds in this commit (applicable to 4.9.x and 4.8.x, but it's unclear whether it is going to be merged to these branches): https://github.com/EpicGames/UnrealEngine/commit/929c1047523829cf9d16be05e78f246034590589 - you can cherry pick it to your repo.

Regarding Linux ARM support: we provide libraries and the cross-toolchain that make compilation possible with only slight changes; however, we do not CIS nor test ARM Linux builds.

avatar image StrangerGwenn Aug 12 '15 at 05:52 PM

The two different errors are yielded by the same toolchain - the 3.5 cross clang linked on the Wiki. I have 4.8.3 and 4.9 P3 installed from source in a folder and they use the exact same setup, both were downloaded this morning.

I will try your commit ASAP.

avatar image RCL STAFF Aug 12 '15 at 05:59 PM

You might have not changed DefaultArchitecture in UEBuildLinux.cs for 4.9 then, and it is still trying to pass -target x86_64...

avatar image StrangerGwenn Aug 12 '15 at 06:10 PM

Actually I'm pretty sure I did since I had the file opened side by side for both UE versions, but I will confirm tomorrow when I'm back at work.

Thank you for your support.

avatar image RCL STAFF Aug 12 '15 at 06:12 PM

You're welcome. Judging by your logs (where intermediate directory is named "x86_64-unknown-linux-gnu") UEBuildLinux.cs was not switched to ARM; that switch + the commit should get it built.

avatar image StrangerGwenn Aug 12 '15 at 06:14 PM

My mistake then. Thanks a lot for the quick fix !

avatar image StrangerGwenn Aug 13 '15 at 09:05 AM

I can confirm that the patch fixes the build issues.

(comments are locked)
10|2000 characters needed characters left
Viewable by all users

Hey Gwenn-

You may want to check the wiki page for compiling on Linux (https://wiki.unrealengine.com/Compiling_For_Linux) There is a specific section at the bottom of the page dealing with additional steps for Linux-ARM.

Cheers

Doug Wilson

more ▼

answered Aug 04 '15 at 03:59 PM

avatar image StrangerGwenn Aug 10 '15 at 07:34 AM

Hi Doug,

Unfortunately I am already following this guide. The first "Setup" step fails, I can't even build the engine in the first place.

I have reset my working dir, reinstalled dependencies, removed the project files and rebuilt from scratch, but nothing changes. Can you try to reproduce the issue ?

(comments are locked)
10|2000 characters needed characters left
Viewable by all users

Follow this question

Once you sign in you will be able to subscribe for any updates here

Answers to this question