UE4 编译报错 “Error LNK2019 : 无法解析的外部符号” 一种可能的原因

报错如下:

Module.AssetPackerEditor.cpp.obj: Error LNK2019 : 无法解析的外部符号 "__declspec(dllimport) public: static double DetailedCookStatsExtern::CookBegin_A_TimeSec" (_imp?CookBegin_AssetPacker_GenPakConfig_TimeSec@DetailedCookStatsExtern@@2NA),函数 "public: void __cdecl UAssetPackerEditorManager::GeneratePakConfig(void)" (?GeneratePakConfig@UAssetPackerEditorManager@@QEAAXXZ) 中引用了该符号

原因:CookBegin_A_TimeSec 这个变量它是 class 中的 static double ,并且没有为它做初始化。在UE4中,需要始终为类静态成员做初始化。解决方法是在合适的地方添加上:

double DetailedCookStatsExtern::CookBegin_A_TimeSec = 0.0;

有的博客说C++ 类静态成员会有默认初始化(为0),但对于UE4来说不是合适的。还是需要做初始化。

C++静态成员变量的初始化_c++静态成员变量初始化-CSDN博客

相关推荐
Duo1J4 天前
【UE】Slate 编辑器工具开发03 - 节点编辑器 (EdGraph)
ue5·编辑器·游戏引擎·ue4
学习!!!10 天前
针对虚幻引擎4中光线追踪内容兼容性的实用解决方案
ue4
Duo1J10 天前
【UE】Slate 编辑器工具开发01 - Slate语法 & 常用控件
ue5·编辑器·游戏引擎·ue4
DoomGT18 天前
UE5 - 制作游戏中切换窗口后游戏自动暂停功能
游戏·ue5·ue4·虚幻·虚幻引擎·unreal engine
Yuk丶2 个月前
厌倦了假AI对话?本地 LLM 语音对话 + 口型同步系统 2.0(已开源!)
c++·人工智能·语言模型·开源·ue4·语音识别·游戏开发
归真仙人2 个月前
【UE】LineTraceByProfile
ue5·游戏引擎·ue4·unreal engine
上山老人2 个月前
UE4布娃娃约束修改
ue4
Yuk丶2 个月前
厌倦了假AI对话?用本地大模型给UE注入真智能(已开源!)
c++·人工智能·开源·ue4·游戏程序·ue4客户端开发
emplace_back2 个月前
UE 使用UE4PrereqSetup_x64.exe一键安装依赖
ue4
Yuk丶2 个月前
LPM的AI 角色三大核心技术实现:长效记忆、人格锁定、低延迟口语化
人工智能·ai·ue4·虚幻·ue4客户端开发