如何在Linux上构建和运行Unreal C++项目?

5
我正在尝试在Linux上构建我的第一个虚幻引擎C++项目。
我按照“Linux快速入门”指南从源代码构建了引擎。然后我安装了Qt Creator并遵循了“如何为UE4设置Qt Creator”指南。
我成功地设置和运行了UE4Editor,并创建了一个新的C++项目。不幸的是,当我尝试运行项目时,它会报错:

enter image description here

当我按下“是”时,会显示此错误消息:

enter image description here

以下是日志中的错误信息:

ERROR: Building would modify the following engine files:
       
       /media/redacted-disk/UnrealEngine/Engine/Binaries/Linux/Android/UE4Editor.modules
       /media/redacted-disk/UnrealEngine/Engine/Binaries/Linux/Linux/UE4Editor.modules
       /media/redacted-disk/UnrealEngine/Engine/Binaries/Linux/UE4Editor.modules
       /media/redacted-disk/UnrealEngine/Engine/Plugins/2D/Paper2D/Binaries/Linux/UE4Editor.modules
       /media/redacted-disk/UnrealEngine/Engine/Plugins/AI/AISupport/Binaries/Linux/UE4Editor.modules
      ... many more

我尝试从IDE重新构建UE4,然后再次构建 - 但错误仍然存在。如果我尝试从引擎文件启动UE4Editor并从那里打开项目,同样的事情会发生。
这个错误是什么原因造成的?为什么当我尝试运行一个项目时它甚至尝试重建引擎?
2个回答

4

我有以下脚本用于将引擎脚本和二进制文件的路径添加到我的PATH中:

UNREAL_HOME="/path/to/source/of/UnrealEngine"
UNREAL_SCRIPTS="${UNREAL_HOME}/Engine/Build/BatchFiles"
UNREAL_SCRIPTS_LINUX="${UNREAL_HOME}/Engine/Build/BatchFiles/Linux"
UNREAL_BINS="${UNREAL_HOME}/Engine/Binaries/Linux"
PATH="${PATH}:${UNREAL_BINS}:${UNREAL_SCRIPTS}:${UNREAL_SCRIPTS_LINUX}"
export PATH

然后我在项目目录中运行 UE4Editor '/absolute/path/to/project.uproject'

我从不在引擎源代码树内创建项目。路径应该完全不同。

我使用VS-Code作为IDE,这是我从经验中得出的最佳选择。QT-Creator仅在您创建包含大量#define的头文件时才能正常工作,这些头文件在虚幻创建的.pro文件中缺失。

您可以通过安装C#C/C++扩展来配置VS-Code以获得类似于IntelliSense的自动完成功能。我必须安装mono才能让OmniSharp工作(这是处理VS-Code自动完成的服务器)。以下是我的VS-Code settings.json文件的一部分:

"omnisharp.path": "/home/myuser/.vscode/extensions/ms-dotnettools.csharp-1.23.9/.omnisharp/1.37.6/omnisharp/OmniSharp.exe",
"omnisharp.monoPath": "/usr/bin/mono",

您也可以安装 C++ Helper 扩展程序,这对于创建方法、类等非常有用。

0
在项目目录中运行“make YOURPROJECTNAMEEditor”,然后可以运行“open YOURPROJECTNAME.uproject”并打开该文件。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接