Description

The build error is descriptive. FreeType2.Build.cs and HarfBuzz.Build.cs explicitly check if they are being used for a Unix server build and throw exceptions to prevent that. Commenting out those exceptions (lines FreeType2.Build.cs:145 and HarfBuzz.Build.cs:114) allows the build to proceed.

Steps to Reproduce
  1. On Windows, install the -v15 Linux cross-compilation toolchain
  2. Clone or Download any version of 4.24 from GitHub, 4.24.2 was used for this
  3. Run Setup.bat and GenerateProjectFiles.bat in Command Prompt after navigating to the installed directory or opening a Powershell Window there.
  4. Then run "Engine\Build\BatchFiles\RunUAT.bat BuildGraph -target="Make Installed Build Win64" -script=Engine/Build/InstalledEngineBuild.xml -clean -set:WithWin64=true -set:WithLinux=true -set:WithServer=true -set:HostPlatformDDCOnly=false -set:WithWin32=false -set:WithMac=false -set:WithAndroid=false -set:WithIOS=false -set:WithTVOS=false -set:WithLinuxAArch64=false -set:WithPS4=false -set:WithXboxOne=false -set:WithSwitch=false -set:WithLumin=false -set:WithLuminMac=false -set:WithHoloLens=false"

Results: The build fails with the following error:

ERROR: Unable to instantiate module 'FreeType2': Linux dedicated server is made to depend on FreeType2. We want to avoid this, please correct module dependencies.
(referenced via allmodules option -> Text3D.Build.cs)

Expected: Build should succeed.

Have Comments or More Details?

There's no existing public thread on this issue, so head over to Questions & Answers just mention UE-87878 in the post.

3
Login to Vote

Fixed
ComponentUE - Platform - Linux
Affects Versions4.24.2
Target Fix4.24.3
Fix Commit11467064
Release Commit11466999
CreatedJan 31, 2020
ResolvedFeb 17, 2020
UpdatedJan 26, 2021