记录 UE5 完全重新构建 UE C++项目
创始人
2024-05-31 04:43:36
0

不知道搞了什么,C++项目的实时代码编译罢工了,搞了半天都修不好,只能又重建了

UE5 版本为 v5.1.1

删除以下文件夹

/Binaries
/Intermediate
/Saved

Binaries 文件夹是编译后的模块
Intermediate 文件夹里是中间层的C++代码,完全由ue5生成
Saved 是一些编辑器设定和日志

注意,以下的xxx为任意字符串

然后用 ue5 打开 xxx.uproject
打开后,提示我是否重建 xxx 模块,点确定,编译了几分钟。

提示编译失败,打开 /Saved/Logs/xxx.log ,里面是编译日志,观察到一句 IsRenderingThreadHealthy 代码无法找到链接符号。
以下是部分日志

  正在创建库 Y:\DrawFront2\Intermediate\Build\Win64\UnrealEditor\Development\DrawFront2\UnrealEditor-DrawFront2.lib 和对象 Y:\DrawFront2\Intermediate\Build\Win64\UnrealEditor\Development\DrawFront2\UnrealEditor-DrawFront2.exp
[15/20] Link UnrealEditor-DrawFront2.dll正在创建库 Y:\DrawFront2\Intermediate\Build\Win64\UnrealEditor\Development\DrawFront2\UnrealEditor-DrawFront2.suppressed.lib 和对象 Y:\DrawFront2\Intermediate\Build\Win64\UnrealEditor\Development\DrawFront2\UnrealEditor-DrawFront2.suppressed.exp
MyMsgPipeLib.cpp.obj : error LNK2019: 无法解析的外部符号 "__declspec(dllimport) bool __cdecl IsRenderingThreadHealthy(void)" (__imp_?IsRenderingThreadHealthy@@YA_NXZ),函数 "public: static class UTexture2D * __cdecl UMyMsgPipeLib::GetCurImage(class FString,int,int,bool &,int &,int &)" (?GetCurImage@UMyMsgPipeLib@@SAPEAVUTexture2D@@VFString@@HHAEA_NAEAH2@Z) 中引用了该符号
Y:\DrawFront2\Binaries\Win64\UnrealEditor-DrawFront2.dll : fatal error LNK1120: 1 个无法解析的外部命令
[16/20] Compile Module.RuntimeAudioImporter.cpp
[17/20] Link UnrealEditor-RuntimeAudioImporter.lib

屏蔽了所有 IsRenderingThreadHealthy 的代码。再次打开ue5进行编译。
这次编译成功了,但是又报了一个错误
游戏模块“xxx”无法被加载,可能存在的操作系统错误,模块可能未正确设置,或版本中包含的插件尚未开启。
在这里插入图片描述
搜索网络后,发现和想起来 我的C++项目链接了我其他的C++项目的dll作为依赖库,这些依赖库dll放在 /Binaries/Win64 里面
而它们在第一步被删掉了。
我把 我其他C++项目的 dll 再次复制到 /Binaries/Win64 里面

再次用 ue5 打开项目,终于行了,能打开了。
立刻用按钮 ue5菜单栏 -> 工具 -> 打开 Visual Studio ,打开C++ IDE
发现 xxx 项目没有找到。。。无法构建。。。此时VS项目不完整。

关闭 Visual Studio,然后点击 ue5菜单栏 -> 工具 -> 刷新 Visual Studio 项目,重建 VS 项目
再次用按钮 ue5菜单栏 -> 工具 -> 打开 Visual Studio ,打开 Visual Studio,这次VS项目终于完整了。

按下 Ctrl+Alt+F11 ,启动 实时代码编译,没有报错。

至此,UE C++ 项目完全重新构建完成。

相关内容

热门资讯

【NI Multisim 14...   目录 序言 一、工具栏 🍊1.“标准”工具栏 🍊 2.视图工具...
银河麒麟V10SP1高级服务器... 银河麒麟高级服务器操作系统简介: 银河麒麟高级服务器操作系统V10是针对企业级关键业务...
不能访问光猫的的管理页面 光猫是现代家庭宽带网络的重要组成部分,它可以提供高速稳定的网络连接。但是,有时候我们会遇到不能访问光...
AWSECS:访问外部网络时出... 如果您在AWS ECS中部署了应用程序,并且该应用程序需要访问外部网络,但是无法正常访问,可能是因为...
Android|无法访问或保存... 这个问题可能是由于权限设置不正确导致的。您需要在应用程序清单文件中添加以下代码来请求适当的权限:此外...
北信源内网安全管理卸载 北信源内网安全管理是一款网络安全管理软件,主要用于保护内网安全。在日常使用过程中,卸载该软件是一种常...
AWSElasticBeans... 在Dockerfile中手动配置nginx反向代理。例如,在Dockerfile中添加以下代码:FR...
AsusVivobook无法开... 首先,我们可以尝试重置BIOS(Basic Input/Output System)来解决这个问题。...
ASM贪吃蛇游戏-解决错误的问... 要解决ASM贪吃蛇游戏中的错误问题,你可以按照以下步骤进行:首先,确定错误的具体表现和问题所在。在贪...
月入8000+的steam搬砖... 大家好,我是阿阳 今天要给大家介绍的是 steam 游戏搬砖项目,目前...