Unity空项目构建Android APK失败求助(含多版本报错信息)
Unity Android空项目构建APK失败问题排查
我尝试在Unity中为Android平台构建空项目导出APK,但构建失败,以下是不同版本下的报错及环境信息:
环境与初始报错(Unity 2022.3.4f1 LTS)
- 已在
Edit -> Project Settings -> Player中填写包名 - 报错信息:
Library/Bee/artifacts/Android/AsyncPluginsFromLinker: Burst internal compiler error: Burst.Compiler.IL.Aot.AotLinkerException: Non 0 exit code | The native link step failed. Check previous exception in the log - linker command line : "Unity/Hub/Editor/2022.3.4f1/Editor/Data/PlaybackEngines/AndroidPlayer/NDK/toolchains/llvm/prebuilt/linux-x86_64/bin/clang '@/tmp/tmp13b2a5.tmp'" UnityEngine.GUIUtility:ProcessEvent (int,intptr,bool&) (at /home/bokken/build/output/unity/unity/Modules/IMGUI/GUIUtility.cs:190)
Building Library/Bee/artifacts/Android/AsyncPluginsFromLinker failed with output: UnityEditor.Build.BuildFailedException: Burst compiler (1.8.7) failed running
Build completed with a result of 'Failed' in 20 seconds (20414 ms)
更换版本后的报错(Unity 2023.1.3f1,Kali Linux系统)
报错信息:
Building Library/Bee/artifacts/Android/x6ly2/1kgcyu7aglsq.o failed with output: clang: error: no input files #0 GetStacktrace(int) #1 DebugStringToFile(DebugStringToFileData const&) #2 DebugLogHandler_CUSTOM_Internal_Log_Injected(LogType, LogOption, ScriptingBackendNativeStringPtrOpaque*, void*) #3 (Mono JIT Code) (wrapper managed-to-native) UnityEngine.DebugLogHandler:Internal_Log_Injected (UnityEngine.LogType,UnityEngine.LogOption,string,intptr) #4 (Mono JIT Code) [BeeBuildPostprocessor.cs:612] UnityEditor.Modules.BeeBuildPostprocessor:ReportBuildResults () #5 (Mono JIT Code) [BeeBuildPostprocessor.cs:771] UnityEditor.Modules.BeeBuildPostprocessor:PostProcess (UnityEditor.Modules.BuildPostProcessArgs) #6 (Mono JIT Code) [BeeBuildPostprocessor.cs:37] UnityEditor.Modules.BeeBuildPostprocessor:PostProcess (UnityEditor.Modules.BuildPostProcessArgs,UnityEditor.BuildProperties&) #7 (Mono JIT Code) UnityEditor.Android.AndroidBuildPostprocessor:PostProcess (UnityEditor.Modules.BuildPostProcessArgs,UnityEditor.BuildProperties&) #8 (Mono JIT Code) [PostprocessBuildPlayer.cs:273] UnityEditor.PostprocessBuildPlayer:Postprocess (UnityEditor.BuildTargetGroup,UnityEditor.BuildTarget,int,string,string,string,UnityEditor.BuildOptions,UnityEditor.RuntimeClassRegistry,UnityEditor.Build.Reporting.BuildReport) #9 (Mono JIT Code) (wrapper runtime-invoke) :runtime_invoke_void_int_int_int_object_object_object_int_object_object (object,intptr,intptr,intptr) #10 mono_get_runtime_build_info #11 mono_runtime_invoke #12 mono_runtime_invoke #13 scripting_method_invoke(ScriptingMethodPtr, ScriptingObjectPtr, ScriptingArguments&, ScriptingExceptionPtr*, bool) #14 ScriptingInvocation::Invoke(ScriptingExceptionPtr*, bool) #15 Scripting::UnityEditor::PostprocessBuildPlayerProxy::Postprocess(int, int, int, core::basic_string<char, core::StringStorageDefault > const&, core::basic_string<char, core::StringStorageDefault > const&, core::basic_string<char, core::StringStorageDefault > const&, int, ScriptingObjectPtr, ScriptingObjectPtr, ScriptingExceptionPtr*) #16 DoBuildPlayer(BuildPlayerSetup const&, dynamic_array<EditorSceneBackup, 0ul>&, core::basic_string<char, core::StringStorageDefault >, dynamic_array<core::basic_string<char, core::StringStorageDefault >, 0ul> const&, bool, BuildReporting::BuildReport&, BuildReporting::BuiltAssetBundleInfo*, core::basic_string<char, core::StringStorageDefault > const&) #17 BuildPlayerStep(BuildPlayerSetup const&, BuildReporting::BuildReport&) #18 BuildPlayer(BuildPlayerSetup const&, BuildReporting::BuildReport&) #19 BuildPipeline_CUSTOM_BuildPlayerInternalNoCheck(ScriptingBackendNativeArrayPtrOpaque*, ScriptingBackendNativeStringPtrOpaque*, ScriptingBackendNativeStringPtrOpaque*, BuildTargetPlatformGroup, BuildTargetPlatform, int, BuildPlayerOptions, ScriptingBackendNativeArrayPtrOpaque*, unsigned char) #20 (Mono JIT Code) (wrapper managed-to-native) UnityEditor.BuildPipeline:BuildPlayerInternalNoCheck (string[],string,string,UnityEditor.BuildTargetGroup,UnityEditor.BuildTarget,int,UnityEditor.BuildOptions,string[],bool) #21 (Mono JIT Code) [BuildPlayerWindowBuildMethods.cs:168] UnityEditor.BuildPlayerWindow/DefaultBuildMethods:BuildPlayer (UnityEditor.BuildPlayerOptions) #22 (Mono JIT Code) [BuildPlayerWindowBuildMethods.cs:96] UnityEditor.BuildPlayerWindow:CallBuildMethods (bool,UnityEditor.BuildOptions) #23 (Mono JIT Code) [BuildPlayerWindow.cs:1099] UnityEditor.BuildPlayerWindow:GUIBuildButtons (UnityEditor.Modules.IBuildWindowExtension,bool,bool,bool,UnityEditor.Build.BuildPlatform,UnityEditor.Modules.IBuildPostprocessor) #24 (Mono JIT Code) [BuildPlayerWindow.cs:529] UnityEditor.BuildPlayerWindow:OnGUI () #25 (Mono JIT Code) [HostView.cs:510] UnityEditor.HostView:InvokeOnGUI (UnityEngine.Rect) #26 (Mono JIT Code) [DockArea.cs:395] UnityEditor.DockArea:DrawView (UnityEngine.Rect) #27 (Mono JIT Code) [IMGUIContainer.cs:705] UnityEngine.UIElements.IMGUIContainer:HandleIMGUIEvent (UnityEngine.Event,UnityEngine.Matrix4x4,UnityEngine.Rect,System.Action,bool) #28 (Mono JIT Code) [IMGUIContainer.cs:675] UnityEngine.UIElements.IMGUIContainer:HandleIMGUIEvent (UnityEngine.Event,System.Action,bool) #29 (Mono JIT Code) [IMGUIContainer.cs:668] UnityEngine.UIElements.IMGUIContainer:HandleIMGUIEvent (UnityEngine.Event,bool) #30 (Mono JIT Code) [IMGUIContainer.cs:617] UnityEngine.UIElements.IMGUIContainer:SendEventToIMGUI (UnityEngine.UIElements.EventBase,bool,bool) #31 (Mono JIT Code) [EventDispatchUtilities.cs:410] UnityEngine.UIElements.EventDispatchUtilities:DispatchToCapturingElement (UnityEngine.UIElements.EventBase,UnityEngine.UIElements.BaseVisualElementPanel,int,UnityEngine.Vector2) #32 (Mono JIT Code) [EventDispatchUtilities.cs:359] UnityEngine.UIElements.EventDispatchUtilities:DispatchToCapturingElementOrElementUnderPointer (UnityEngine.UIElements.EventBase,UnityEngine.UIElements.BaseVisualElementPanel,int,UnityEngine.Vector2) #33 (Mono JIT Code) [EventDispatcher.cs:292] UnityEngine.UIElements.EventDispatcher:ProcessEventQueue () #34 (Mono JIT Code) [EventDispatcher.cs:257] UnityEngine.UIElements.EventDispatcher:OpenGate () #35 (Mono JIT Code) [EventDispatcher.cs:201] UnityEngine.UIElements.EventDispatcher:Dispatch (UnityEngine.UIElements.EventBase,UnityEngine.UIElements.BaseVisualElementPanel,UnityEngine.UIElements.DispatchMode) #36 (Mono JIT Code) [Panel.cs:480] UnityEngine.UIElements.BaseVisualElementPanel:SendEvent (UnityEngine.UIElements.EventBase,UnityEngine.UIElements.DispatchMode) #37 (Mono JIT Code) [UIElementsUtility.cs:205] UnityEngine.UIElements.UIElementsUtility:UnityEngine.UIElements.IUIElementsUtility.ProcessEvent (int,intptr,bool&) #38 (Mono JIT Code) [UIElementsUtility.cs:28] UnityEngine.UIElements.UIEventRegistration/<>c:<.cctor>b__1_2 (int,intptr)
Build completed with a result of 'Failed' in 51 seconds (50898 ms)
3 errors #0 GetStacktrace(int) #1 DebugStringToFile(DebugStringToFileData const&) #2 DebugLogHandler_CUSTOM_Internal_Log_Injected(LogType, LogOption, ScriptingBackendNativeStringPtrOpaque*, void*) #3 (Mono JIT Code) (wrapper managed-to-native) UnityEngine.DebugLogHandler:Internal_Log_Injected (UnityEngine.LogType,UnityEngine.LogOption,string,intptr) #4 (Mono JIT Code) [BuildPlayerWindowBuildMethods.cs:96] UnityEditor.BuildPlayerWindow:CallBuildMethods (bool,UnityEditor.BuildOptions) #5 (Mono JIT Code) [BuildPlayerWindow.cs:1099] UnityEditor.BuildPlayerWindow:GUIBuildButtons (UnityEditor.Modules.IBuildWindowExtension,bool,bool,bool,UnityEditor.Build.BuildPlatform,UnityEditor.Modules.IBuildPostprocessor) #6 (Mono JIT Code) [BuildPlayerWindow.cs:529] UnityEditor.BuildPlayerWindow:OnGUI () #7 (Mono JIT Code) [HostView.cs:510] UnityEditor.HostView:InvokeOnGUI (UnityEngine.Rect) #8 (Mono JIT Code) [DockArea.cs:395] UnityEditor.DockArea:DrawView (UnityEngine.Rect) #9 (Mono JIT Code) [IMGUIContainer.cs:705] UnityEngine.UIElements.IMGUIContainer:HandleIMGUIEvent (UnityEngine.Event,UnityEngine.Matrix4x4,UnityEngine.Rect,System.Action,bool) #10 (Mono JIT Code) [IMGUIContainer.cs:675] UnityEngine.UIElements.IMGUIContainer:HandleIMGUIEvent (UnityEngine.Event,System.Action,bool) #11 (Mono JIT Code) [IMGUIContainer.cs:668] UnityEngine.UIElements.IMGUIContainer:HandleIMGUIEvent (UnityEngine.Event,bool) #12 (Mono JIT Code) [IMGUIContainer.cs:617] UnityEngine.UIElements.IMGUIContainer:SendEventToIMGUI (UnityEngine.UIElements.EventBase,bool,bool) #13 (Mono JIT Code) [EventDispatchUtilities.cs:410] UnityEngine.UIElements.EventDispatchUtilities:DispatchToCapturingElement (UnityEngine.UIElements.EventBase,UnityEngine.UIElements.BaseVisualElementPanel,int,UnityEngine.Vector2) #14 (Mono JIT Code) [EventDispatchUtilities.cs:359] UnityEngine.UIElements.EventDispatchUtilities:DispatchToCapturingElementOrElementUnderPointer (UnityEngine.UIElements.EventBase,UnityEngine.UIElements.BaseVisualElementPanel,int,UnityEngine.Vector2) #15 (Mono JIT Code) [EventDispatcher.cs:292] UnityEngine.UIElements.EventDispatcher:ProcessEventQueue () #16 (Mono JIT Code) [EventDispatcher.cs:257] UnityEngine.UIElements.EventDispatcher:OpenGate () #17 (Mono JIT Code) [EventDispatcher.cs:201] UnityEngine.UIElements.EventDispatcher:Dispatch (UnityEngine.UIElements.EventBase,UnityEngine.UIElements.BaseVisualElementPanel,UnityEngine.UIElements.DispatchMode) #18 (Mono JIT Code) [Panel.cs:480] UnityEngine.UIElements.BaseVisualElementPanel:SendEvent (UnityEngine.UIElements.EventBase,UnityEngine.UIElements.DispatchMode) #19 (Mono JIT Code) [UIElementsUtility.cs:205] UnityEngine.UIElements.UIElementsUtility:UnityEngine.UIElements.IUIElementsUtility.ProcessEvent (int,intptr,bool&) #20 (Mono JIT Code) [UIElementsUtility.cs:28] UnityEngine.UIElements.UIEventRegistration/<>c:<.cctor>b__1_2 (int,intptr)
解决方案建议
- 禁用Burst编译器:在
Edit -> Project Settings -> Burst中取消勾选Enable Burst Compiler,再尝试构建。 - 清理项目缓存:删除项目根目录下的
Library、Temp文件夹,重启Unity后重新构建。 - 检查NDK完整性:通过Unity Hub重新安装对应版本的Android Build Support组件,确保NDK和SDK文件完整。
- 权限检查:在Kali Linux下,确保Unity编辑器对项目目录、
/tmp临时目录有读写权限,可尝试用sudo启动Unity测试。 - 切换脚本后端:在
Edit -> Project Settings -> Player -> Android -> Other Settings中,将脚本后端从IL2CPP切换为Mono。
内容的提问来源于stack exchange,提问作者anonyme2.0
相关产品推荐
相关产品推荐

