You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Unity 2022.3.6f1 iOS打包报错:Library 'GameAssembly'未找到求助

Unity iOS打包链接错误解决建议

针对Unity 2022.3.6f1 + Xcode15.0.1的问题

  • 确认脚本后端配置:打开Unity Player Settings,检查Scripting Backend是否为IL2CPP。如果是Mono后端,不会生成GameAssembly,此时报错大概率是Xcode配置混乱;如果是IL2CPP,导出Xcode项目后检查Frameworks/UnityFramework.framework下是否存在GameAssembly.dylib,没有的话清理Unity的Library、Temp文件夹后重新导出。
  • 修复重复-lc++链接库:打开Xcode项目,选中UnityFramework Target,进入Build Settings → Other Linker Flags,删除重复的-lc++条目。或者用以下后处理脚本自动处理:
    using UnityEditor;
    using UnityEditor.Callbacks;
    using UnityEditor.iOS.Xcode;
    using System.IO;
    
    [PostProcessBuild(2000)]
    public static void FixiOSBuildIssues(BuildTarget buildTarget, string pathToBuiltProject)
    {
        if (buildTarget != BuildTarget.iOS) return;
    
        string projectPath = Path.Combine(pathToBuiltProject, "Unity-iPhone.xcodeproj", "project.pbxproj");
        PBXProject project = new PBXProject();
        project.ReadFromFile(projectPath);
    
        string frameworkTargetGuid = project.GetUnityFrameworkTargetGuid();
        // 清理重复的-lc++并保留一个
        string linkerFlags = project.GetBuildPropertyForAnyConfig(frameworkTargetGuid, "OTHER_LDFLAGS");
        linkerFlags = linkerFlags.Replace("-lc++ ", "").Replace("-lc++", "");
        project.SetBuildPropertyForAnyConfig(frameworkTargetGuid, "OTHER_LDFLAGS", linkerFlags + " -lc++");
    
        // 统一设置SDK版本
        foreach (string configName in project.BuildConfigNames())
        {
            string configGuid = project.BuildConfigByName(frameworkTargetGuid, configName);
            project.SetBuildPropertyForConfig(configGuid, "SDKROOT", "iphoneos");
        }
    
        project.WriteToFile(projectPath);
    }
    
  • 升级Unity补丁版本:Unity 2022.3早期版本对Xcode15的适配有缺陷,升级到2022.3.18f1及以上的LTS补丁版本,官方修复了大量Xcode15兼容问题。
  • 检查架构设置:Unity Player Settings里Architecture只勾选ARM64,Xcode15不再支持32位架构,多余的架构会导致链接错误。

针对Unity 2021.3.0f1的未定义符号问题

  • 清理版本迁移残留:从2022降级到2021后,彻底删除项目的Library、Temp、Obj文件夹,以及Assets/Plugins/iOS下的旧插件文件,避免版本不兼容的残留代码。
  • 匹配Xcode版本:Unity 2021.3对Xcode15的支持极差,建议切换回Xcode14.3.1打包,该版本是2021 LTS官方推荐的兼容版本。
  • 确认脚本后端一致性:确保2021版本的Scripting Backend和原项目一致,不要随意在IL2CPP和Mono之间切换,否则会出现未定义符号错误。

通用排查步骤

  • 移除第三方插件测试:暂时禁用或删除项目中的Native插件,排查是否是插件不兼容Xcode15导致的链接错误,找到问题插件后更新到最新版本。
  • 尝试Development Build:Unity导出Xcode时勾选Development Build,开启调试模式后有时能绕过部分链接配置问题,确认基本功能正常后再切换到Release模式。

内容的提问来源于stack exchange,提问作者C-Perfume

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.04 23:07:42