UE Windows平台下Linux的交叉编译项目打包
交叉编译(Cross-compilation) 使得在以Windows为中心的工作流程中工作的游戏开发者能够以Linux为目标对项目进行打包。目前,只有Windows支持交叉编译。
交叉编译支持的平台
- Windows | Linux-x86_64
- Windows | Linux-ARM
交叉编译工具链
Linux-x86_64 工具链
Linux-ARM 工具链
https://s3.amazonaws.com/unrealengine/qfe/arm-unknown-linux-gnueabihf_v5_clang-3.5.0-ld-2.23.1-glibc-2.13.zip
安装配置使用工具链
直接安装或解压缩,最重要的是设置环境变量,对于不同的版本主要是设置不同的环境变量。
clang v8+
clang v4-7
Packaging for Linux
配置UE Project:
不同的目标平台需要不同的配置。
- X86_64UnknownLinuxGnu
- ArmUnknownLinuxGnueabihf
- AArch64UnknownLinuxGnueabi
另:源码中配置(源码编译编辑器可能的配置)
x86_64平台
运行
chmod +x ./<ProjectName>.sh
LinuxNoEditor/<ProjectName>/Binaries/Linux/UEGame
ARM平台
需要替换一下libopenal.so.1
动态链接库。
参考
- https://docs.unrealengine.com/4.26/zh-CN/SharingAndReleasing/Linux/AdvancedLinuxDeveloper/LinuxCrossCompileLegacy/
- https://dfx.lv/b/unreal-engine-4-23-1-linux-arm_2456/
- https://nerivec.github.io/old-ue4-wiki/pages/compiling-for-linux.html
- [https://youtu.be/WKRi8bZCsFM](How to Cross-Compile for Linux in Unreal Engine - Setting up the Toolchain)
- https://blog.csdn.net/mrbaolong/article/details/134816863?spm=1001.2014.3001.5501