Win 下 打包时遇到 xxxx\il2cpp\libil2cpp\utils\Il2CppHashMap.h(71): error C2039: 'hash_compare': is not a member of 'stdext'
这是.net 7发布后最新版本vs改动打破了一些向后兼容性引起。你可以回退2022的旧版本或者使用2019之类的版本。
所以建议使用.net 6 之前的版本进行开发,至少截至目前此问题尚未修复,vs编辑器版本使用vs2019,或是vs2022较老的版本
官方 - 使用 IL2CPP 和 Visual Studio 2022 17.4 进行构建的解决方法 - Unity 论坛
当然本文安装步骤皆可在官网浏览到:
安装HybridCLR | Focus Creative Games (focus-creative-games.github.io)
------------------------------------------------------
unity新手建议版本:2020.3.33
vs本版:2019(或兼容的2022),(支持的rider也行,需谨慎选择)
安装时必须选中 使用c++的游戏开发
这个组件。
.net版本:6(或更早,但不建议低于4.8)
unity需要添加安装的模块:
------------------------------------------------------
官方建议是从url进行安装:简单的截几个图说明下:
打开后将官方提供的url粘进去:
网址在这进去找:安装HybridCLR | Focus Creative Games (focus-creative-games.github.io)
这里不直接提供网址,因为不确定官方的更新
然后点击Add联网等待加载即可
如下图就是安装成功:
----------------------------------
设置:
- 关闭增量式GC(Use Incremental GC) 选项。因为目前不支持增量式GC。WebGL平台忽略此选项。
这中间可能会有重启,请不要担心,这是正常情况
打开选择: Installer->安装 即可
安装完成:
如果这里出现其他问题,请检查操作是否出现错误,或是您的设备有其他情况,请参阅官网