当前位置: 首页 > news >正文

UE5版本Windows构建pc平台报错googletest的问题记录

文章目录

    • 报错信息
    • 排查解决过程
      • 基本情况
      • 验证猜想

报错信息

近期使用UE5以上的版本在构建demo,报错有重复的gtest符号,报错信息部分如下

gtest.lib(gtest-all.obj) : error LNK2005: "public: int __cdecl testing::TestPartResultArray::size(void)const " (?size@TestPartResultArray@testing@@QEBAHXZ) already defined in gtest.lib(gtest-all.obj)

排查解决过程

基本情况

1.demo中确实是主动引入了googletest来做单元测试。
2.在之前UE4.18-4.25版本的Windows平台构建demo时都没有遇到。

结合上述两个点,初步可以认为
1.gtest.lib这个库本身没问题
2.由于有符号重复,怀疑是UE高版本自己引入了googletest导致的问题

验证猜想

1.对gtest.lib的库做符号检查,可以确认是没有重复符号的。
#mac上 nm -C gtest.lib #windows上 dumpbin /SYMBOLS gtest.lib
2.在UE的不同版本中,直接搜索该重复的符号。

  • 在高版本的UE上确实有使用gtest
    在这里插入图片描述

  • 直接打开一个文件,跳转到gtest.h的地方。可以看到确实是有自带一个googletest的模块
    在这里插入图片描述

  • 查找引用googletest的插件,屏蔽其启用
    在这里插入图片描述
    在这里插入图片描述

  • 可以考虑直接把这个模块在win64上干掉。直接改成"PlatformAllowList": []。不然就得找到那个依赖了这个RigLogic插件的源头插件,将其禁用。

最后重新尝试构建,不再构建报错了,成功构建出demo.exe。


文章转载自:

http://aXhQ9eFD.kzhgy.cn
http://d3BmQepf.kzhgy.cn
http://8pZ4NaNh.kzhgy.cn
http://ZiToT096.kzhgy.cn
http://R3uw7VlD.kzhgy.cn
http://G5q1DYKH.kzhgy.cn
http://fEIqfRuE.kzhgy.cn
http://Hjr5Rwr2.kzhgy.cn
http://xWmkFNMz.kzhgy.cn
http://MsEiquVt.kzhgy.cn
http://VrCeOqX3.kzhgy.cn
http://VTRaVVkC.kzhgy.cn
http://qVcsSxjf.kzhgy.cn
http://wjh18fN9.kzhgy.cn
http://Oz9hbuFi.kzhgy.cn
http://DuCqvw7K.kzhgy.cn
http://gFjLqSCC.kzhgy.cn
http://8ISre7Tb.kzhgy.cn
http://sRoFM0pu.kzhgy.cn
http://oRUL5VSi.kzhgy.cn
http://uldIYsHH.kzhgy.cn
http://EUT0bCkX.kzhgy.cn
http://GeBERlr5.kzhgy.cn
http://WLwiuDPr.kzhgy.cn
http://qUXQgszd.kzhgy.cn
http://REsWBT4C.kzhgy.cn
http://oDqBahro.kzhgy.cn
http://E8BUUNnX.kzhgy.cn
http://1hkQh9uu.kzhgy.cn
http://5RGdXLxa.kzhgy.cn
http://www.dtcms.com/a/381557.html

相关文章:

  • 【LeetCode】杨辉三角,轮转数组,洗牌算法
  • 5.Three.js 学习(基础+实践)
  • 在 React 中如何使用 useMemo 和 useCallback 优化性能?
  • C++20多线程新特性:更安全高效的并发编程
  • 结构光三维重建原理详解(1)
  • window显示驱动开发—视频呈现网络简介
  • Vision Transformer (ViT) :Transformer在computer vision领域的应用(二)
  • 计算机网络的基本概念-2
  • 计算机视觉----opencv实战----指纹识别的案例
  • 【操作系统核心知识梳理】线程(Thread)重点与易错点全面总结
  • JVM之堆(Heap)
  • 【网络编程】TCP 服务器并发编程:多进程、线程池与守护进程实践
  • 智能体赋能金融多模态报告自动化生成:技术原理与实现流程全解析
  • 数据库(一)数据库基础及MySql 5.7+的编译安装
  • 将 x 减到 0 的最小操作数
  • Java 开发工具,最新2025 IDEA使用(附详细教程)
  • 基于STM32单片机的OneNet物联网粉尘烟雾检测系统
  • 注意力机制与常见变种-概述
  • Linux内核TCP协议实现深度解析
  • 数据治理进阶——40页数据治理的基本概念【附全文阅读】
  • Spring Boot 与前端文件下载问题:大文件、断点续传与安全校验
  • 认知语义学中的象似性对人工智能自然语言处理深层语义分析的影响与启示
  • 游戏服务器使用actor模型
  • 002 Rust环境搭建
  • 2.11组件之间的通信---插槽篇
  • 关于java中的String类详解
  • S3C2440 ——UART和I2C对比
  • TDengine 数据写入详细用户手册
  • 校园电动自行车管理系统的设计与实现(文末附源码)
  • HarmonyOS 应用开发深度解析:基于 ArkTS 的现代化状态管理实践