Package Details: unreal-engine-4 4.27.2-15

Git Clone URL: https://aur.archlinux.org/unreal-engine-4.git (read-only, click to copy)
Package Base: unreal-engine-4
Description: A 3D game engine by Epic Games which can be used non-commercially for free.
Upstream URL: https://www.unrealengine.com/
Keywords: 3d engine game game-engine ue4 unreal
Licenses: custom:UnrealEngine
Submitter: Neko-san
Maintainer: Neko-san
Last Packager: Neko-san
Votes: 6
Popularity: 0.000114
First Submitted: 2022-06-30 18:25 (UTC)
Last Updated: 2023-11-19 18:57 (UTC)

Pinned Comments

Neko-san commented on 2023-07-13 04:15 (UTC)

The issue with me including the Commit.gitdeps.xml alsongside the PKGBUILD manually is that it might be subject to a legal grey area since the UE repo is private and is technically a part of the source;

because the repo is private, having the PKGBUILD access it directly isn't a simple task because Github requires the URL request to have a generated timed authentication token that expires.

Meaning that I can't simply grab the URL and paste it into the PKBUILD willy-nilly because it is both not tied to your account and because the links have an expiration attached. I get why Epic chose this approach but their flawed "open-source" methodology is what makes this difficult.

Neko-san commented on 2022-10-15 20:50 (UTC) (edited on 2022-10-15 20:54 (UTC) by Neko-san)

I updated it to not use the Arch Clang compiler by default; I thought I had this opt-out but I didn't - the reason being that for UE4, there's actually a hard-coded reference to look for a Windows compiler (thanks Epic...) and using the Arch compiler has been the solution on the AUR for UE4 for a long time

That said, if it fails to compile by default now (at least if strictly using makepkg), the fault is entirely on Epic for not properly having the Unreal Build Tool (UBT) not handle the Linux build properly - proper support for this was implemented in UE5, so they should honestly backport that to UE4's codebase

I left a user toggle-able switch in the PKGBUILD if anyone wants to try the Arch Clang compiler patch again, for whatever reason

If anyone manages to figure out how to this otherwise, let me know and I'll add the fix

Latest Comments

« First ‹ Previous 1 2 3 4 5 Next › Last »

Neko-san commented on 2022-10-15 20:40 (UTC) (edited on 2022-10-15 20:45 (UTC) by Neko-san)

Nevermind, I think see the problem; I'll fix it in a minute

Neko-san commented on 2022-10-15 20:36 (UTC)

@hamki You absolutely shouldn't be missing dependencies; you can try enabling the system Clang patch in the PKGBUILD in the meantime; I'll try to look into this

The SDK it's referring to is the Clang compiler that's supposed to be bundled with UE4; the configuration we're using to enable that is supposed to be correct and has worked in the past, so I don't understand why it's suddenly being an issue

A possibility might be because you're not using makepkg rather than yay, so you can try that too; I know that Unreal's build system tends not to like AUR helpers sometimes

hamki commented on 2022-10-15 10:53 (UTC) (edited on 2022-10-15 10:55 (UTC) by hamki)

I just use yay -S unreal-engine-4 for this package. But the output Platform Linux is not a valid platform to build. Check that the SDK is installed properly.

Am I missing some package dependencies?

****** [2/10] Compile UnrealHeaderTool Linux

Reading local file list from /home/hamki/.cache/yay/unreal-engine-4/src/unreal-engine-4/Engine/Saved/BuildGraph/Update Version Files/Tag-Update Version Files.xml
Running: mono "/home/hamki/.cache/yay/unreal-engine-4/src/unreal-engine-4/Engine/Binaries/DotNET/UnrealBuildTool.exe" UnrealHeaderTool Linux Development  -NoUBTMakefiles -nobuilduht -precompile -allmodules -Manifest=/home/hamki/.cache/yay/unreal-engine-4/src/unreal-engine-4/Engine/Intermediate/Build/Manifest.xml -NoHotReload -log="/home/hamki/Library/Logs/Unreal Engine/LocalBuildLogs/UBT-UnrealHeaderTool-Linux-Development.txt"
  Using 'git status' to determine working set for adaptive non-unity build (/home/hamki/.cache/yay/unreal-engine-4/src/unreal-engine-4).
  ERROR: Platform Linux is not a valid platform to build. Check that the SDK is installed properly.
Took 3.207611s to run mono, ExitCode=6
UnrealBuildTool failed. See log for more details. (/home/hamki/Library/Logs/Unreal Engine/LocalBuildLogs/UBT-UnrealHeaderTool-Linux-Development.txt)
AutomationTool exiting with ExitCode=6 (6)
RunUAT ERROR: AutomationTool was unable to run successfully.
==> ERROR: A failure occurred in build().
    Aborting...
 -> error making: unreal-engine-4

Neko-san commented on 2022-08-31 18:16 (UTC) (edited on 2022-08-31 18:16 (UTC) by Neko-san)

"The last thing I noticed was the .desktop file has the install path as /opt/unreal-engine/"

This is supposed to change in the packaging process:

. . .
package() {
  # Desktop entry
  if [[ "${_install_dir}" != "opt/${pkgname}" ]] # Set new path if dir changed
  then
    sed -i "5c\Path=/${_install_dir}/Engine/Binaries/Linux/" com.unrealengine.UE4Editor.desktop
    sed -i "6c\Exec=/${_install_dir}/Engine/Binaries/Linux/UE4Editor %F" com.unrealengine.UE4Editor.desktop
  fi
. . .

Run cat /usr/share/applications/com.unrealengine.UE4Editor.desktop to double-check this is actually corrected

As for your lighting issue, this likely just a UE project issue unrelated to the build, but you're free to prove otherwise

Marauder586 commented on 2022-08-31 11:40 (UTC) (edited on 2022-08-31 16:16 (UTC) by Marauder586)

Hey, that's awesome! The package built fine overnight after those options were removed. The last thing I noticed was the .desktop file has the install path as /opt/unreal-engine/... whereas the actual install path is /opt/unreal-engine-4/... Probably switched when Unreal 5 was released. I have unreal up and running though, so thank you!

As for the HTML5 option, I'll take a look to see if HTML5 is one of the target platforms later today. That link you gave seems to indicate that the option should have worked.

Lastly, I have an error LIGHTING NEEDS TO BE REBUILD (1 unbuild object) when opening the software for the first time. I'll try to look into it later today and update.

Thanks again!

EDIT: The lighting thing is a natural part of UE4 and was not referring to the compilation of the program. EDIT 2: The list of target platforms includes Android, HoloLens, iOS, Linux, Linux (AArch64), Lumin, Mac, tvOS, and Windows (64-bit). I don't see HTML or any other web related thing.

Neko-san commented on 2022-08-31 05:29 (UTC) (edited on 2022-08-31 05:29 (UTC) by Neko-san)

Fixed; let me know if it gives you trouble again (I don't actually have the storage space to do the testing myself)

https://docs.unrealengine.com/4.27/en-US/ProductionPipelines/DeployingTheEngine/UsinganInstalledBuild/#installedbuildscriptoptions

The documentation said it's supposed to be supported but I guess that's only applicable to UE5?

Marauder586 commented on 2022-08-31 03:05 (UTC)

Hi, I'm still pretty new to using the AUR, but I think lines 129 / 131 are causing problems for me. One of the options being set is "WithHTML5", but the file in Engine/Build/InstalledEngineBuild.xml doesn't have this as an option. Thanks!

octia commented on 2022-07-07 20:23 (UTC)

@Neko-san Yep, sorry, forgot to redownload. All good.

Neko-san commented on 2022-07-07 19:19 (UTC)

@octia Did you grab a new snapshot / redownload with your AUR helper? I did correct the branch name to 4.27, so I'm not sure what you're referring to?

octia commented on 2022-07-07 19:09 (UTC)

Hey, just reminding you about this, the problem still happens.