云打包成ios时能编译成功,但是最后打包失败
- 发布:2026-01-20 21:40
- 更新:2026-01-20 21:41
- 阅读:20
【报Bug】打包成ios时报错:clang: error: linker command failed with exit code 1 (use -v to see invocation)
产品分类: uniapp/App
PC开发环境操作系统: Windows
PC开发环境操作系统版本号: win10
HBuilderX类型: 正式
HBuilderX版本号: 4.87
手机系统: iOS
手机系统版本号: iOS 26
手机厂商: 苹果
手机机型: iphone 10 pro max
页面类型: vue
vue版本: vue3
打包方式: 云端
项目创建方式: HBuilderX
操作步骤:
预期结果:
打包成功
打包成功
实际结果:
打包失败
打包失败
bug描述:
ld: warning: -ld_classic is deprecated and will be removed in a future release
ld: warning: arm64 function not 4-byte aligned: _dc_ffi_call_SYSV from [SourcePath]/libs/UniSDK/liblibPGInvocation.a(sysv_arm64.o)
ld: warning: arm64 function not 4-byte aligned: _ffi_closure_SYSV from [SourcePath]/libs/UniSDK/liblibPGInvocation.a(sysv_arm64.o)
ld: warning: method '-setVideoOrientation:' in category from [SourcePath]/libs/UniSDK/libDCUniBarcode.a(PGWXBarcodeCapture.o) conflicts with same method from another category
ld: warning: method '-imageLoaded:userInfo:' in category from [SourcePath]/libs/UniSDK/libDCUniVideo.a(UIImageView+WXVideo.o) conflicts with same method from another category
ld: warning: method '-imageLoaded:type:userInfo:' in category from [SourcePath]/libs/UniSDK/libDCUniVideo.a(UIImageView+WXVideo.o) conflicts with same method from another category
ld: warning: pointer not aligned at address 0x10128D6BA ('_dbl_lnds_data_TileDataRespMsg_fields' + 50 from [SourcePath]/libs/Universal/MAMapKit.framework/MAMapKit(MAMapKit-arm64-master.o))
ld: warning: pointer not aligned at address 0x10128D75E ('_dbl_lnds_mapping_TileSdHdLinkMappingRespMsg_fields' + 79 from [SourcePath]/libs/Universal/MAMapKit.framework/MAMapKit(MAMapKit-arm64-master.o))
ld: unaligned pointer(s) for architecture arm64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
note: Disabling previews because SWIFT_VERSION is set and SWIFT_OPTIMIZATION_LEVEL=-O, expected -Onone (in target 'HBuilder' from project 'HBuilder')
warning: Run script build phase 'Run Script' will be run during every build because it does not specify any outputs. To address this issue, either add output dependencies to the script phase, or configure it to run in every build by unchecking \"Based on dependency analysis\" in the script phase. (in target 'HBuilder' from project 'HBuilder')--- xcodebuild: WARNING: Using the first of multiple matching destinations:
{ platform:iOS, id:dvtdevice-DVTiPhonePlaceholder-iphoneos:placeholder, name:Any iOS Device }
{ platform:macOS, arch:arm64, variant:Designed for [iPad,iPhone], id:00008112-000C19A8022A201E, name:My Mac }
{ platform:iOS Simulator, id:dvtdevice-DVTiOSDeviceSimulatorPlaceholder-iphonesimulator:placeholder, name:Any iOS Simulator Device }
{ platform:iOS Simulator, id:DA565B84-4CDB-4EE5-9BBB-798D4D818C9A, OS:17.5, name:iPad (10th generation) }
{ platform:iOS Simulator, id:DA565B84-4CDB-4EE5-9BBB-798D4D818C9A, OS:17.5, name:iPad (10th generation) }
{ platform:iOS Simulator, id:9B15C72D-6350-4CE7-863F-846487E68A13, OS:18.1, name:iPad (10th generation) }
{ platform:iOS Simulator, id:9B15C72D-6350-4CE7-863F-846487E68A13, OS:18.1, name:iPad (10th generation) }
{ platform:iOS Simulator, id:92419D17-7B57-4951-AC39-D8F0DF367C7B, OS:17.5, name:iPad Air 11-inch (M2) }
{ platform:iOS Simulator, id:92419D17-7B57-4951-AC39-D8F0DF367C7B, OS:17.5, name:iPad Air 11-inch (M2) }
{ platform:iOS Simulator, id:CA36ED42-4CFE-4E96-AF25-6F05AFF81057, OS:18.1, name:iPad Air 11-inch (M2) }
{ platform:iOS Simulator, id:CA36ED42-4CFE-4E96-AF25-6F05AFF81057, OS:18.1, name:iPad Air 11-inch (M2) }
{ platform:iOS Simulator, id:A79ADAA5-F8BC-40F6-BD0D-3093BDF4F8CB, OS:17.5, name:iPad Air 13-inch (M2) }
{ platform:iOS Simulator, id:A79ADAA5-F8BC-40F6-BD0D-3093BDF4F8CB, OS:17.5, name:iPad Air 13-inch (M2) }
{ platform:iOS Simulator, id:A948702C-F63E-44B5-B2F8-19217CADF464, OS:18.1, name:iPad Air 13-inch (M2) }
{ platform:iOS Simulator, id:A948702C-F63E-44B5-B2F8-19217CADF464, OS:18.1, name:iPad Air 13-inch (M2) }
{ platform:iOS Simulator, id:8E74423E-AF0C-46B1-848A-3C23F7C5F958, OS:17.5, name:iPad Pro 11-inch (M4) }
{ platform:iOS Simulator, id:8E74423E-AF0C-46B1-848A-3C23F7C5F958, OS:17.5, name:iPad Pro 11-inch (M4) }
{ platform:iOS Simulator, id:E6BCF742-2D3B-4730-A62E-9D2032E5F4F9, OS:18.1, name:iPad Pro 11-inch (M4) }
{ platform:iOS Simulator, id:E6BCF742-2D3B-4730-A62E-9D2032E5F4F9, OS:18.1, name:iPad Pro 11-inch (M4) }
{ platform:iOS Simulator, id:9094BC46-A891-44AC-9738-8E3B9DE5C6F6, OS:17.5, name:iPad Pro 13-inch (M4) }
{ platform:iOS Simulator, id:9094BC46-A891-44AC-9738-8E3B9DE5C6F6, OS:17.5, name:iPad Pro 13-inch (M4) }
{ platform:iOS Simulator, id:52EC9B12-EDD9-491D-A79F-5B2A529F9A70, OS:18.1, name:iPad Pro 13-inch (M4) }
{ platform:iOS Simulator, id:52EC9B12-EDD9-491D-A79F-5B2A529F9A70, OS:18.1, name:iPad Pro 13-inch (M4) }
{ platform:iOS Simulator, id:A21B295A-97AD-4A48-AC40-9492EFFAF9CE, OS:17.5, name:iPad mini (6th generation) }
{ platform:iOS Simulator, id:A21B295A-97AD-4A48-AC40-9492EFFAF9CE, OS:17.5, name:iPad mini (6th generation) }
{ platform:iOS Simulator, id:17A11C0B-F384-4A01-A4D4-BFD6F62A732C, OS:18.1, name:iPad mini (A17 Pro) }
{ platform:iOS Simulator, id:17A11C0B-F384-4A01-A4D4-BFD6F62A732C, OS:18.1, name:iPad mini (A17 Pro) }
{ platform:iOS Simulator, id:3A78577F-4989-42E3-B7AD-3EEBF72C0900, OS:17.5, name:iPhone 15 }
{ platform:iOS Simulator, id:3A78577F-4989-42E3-B7AD-3EEBF72C0900, OS:17.5, name:iPhone 15 }
{ platform:iOS Simulator, id:A2CB8899-1FC4-46F8-8313-8BC8ADB23FB3, OS:17.5, name:iPhone 15 Plus }
{ platform:iOS Simulator, id:A2CB8899-1FC4-46F8-8313-8BC8ADB23FB3, OS:17.5, name:iPhone 15 Plus }
{ platform:iOS Simulator, id:B446FAF6-041E-4D59-A075-6C205D9D2CF2, OS:17.5, name:iPhone 15 Pro }
{ platform:iOS Simulator, id:B446FAF6-041E-4D59-A075-6C205D9D2CF2, OS:17.5, name:iPhone 15 Pro }
{ platform:iOS Simulator, id:77402D7F-A41E-4463-9744-513FBC2EF2E7, OS:17.5, name:iPhone 15 Pro Max }
{ platform:iOS Simulator, id:77402D7F-A41E-4463-9744-513FBC2EF2E7, OS:17.5, name:iPhone 15 Pro Max }
{ platform:iOS Simulator, id:B68A1A39-1D89-4BE3-AE2C-C3BD38CDFDD5, OS:18.1, name:iPhone 16 }
{ platform:iOS Simulator, id:B68A1A39-1D89-4BE3-AE2C-C3BD38CDFDD5, OS:18.1, name:iPhone 16 }
{ platform:iOS Simulator, id:D94A3AC4-8B92-482F-A59C-858CDCEF2539, OS:18.1, name:iPhone 16 Plus }
{ platform:iOS Simulator, id:D94A3AC4-8B92-482F-A59C-858CDCEF2539, OS:18.1, name:iPhone 16 Plus }
{ platform:iOS Simulator, id:96C03E19-8EE5-4008-832E-867E32718D5F, OS:18.1, name:iPhone 16 Pro }
{ platform:iOS Simulator, id:96C03E19-8EE5-4008-832E-867E32718D5F, OS:18.1, name:iPhone 16 Pro }
{ platform:iOS Simulator, id:A217D470-33C9-4C4D-8112-C294392F3A7A, OS:18.1, name:iPhone 16 Pro Max }
{ platform:iOS Simulator, id:A217D470-33C9-4C4D-8112-C294392F3A7A, OS:18.1, name:iPhone 16 Pro Max }
{ platform:iOS Simulator, id:7CF02EB6-CFA8-41F6-A02C-B74636EB8D7C, OS:17.5, name:iPhone SE (3rd generation) }
{ platform:iOS Simulator, id:7CF02EB6-CFA8-41F6-A02C-B74636EB8D7C, OS:17.5, name:iPhone SE (3rd generation) }
{ platform:iOS Simulator, id:6DF44C4A-27F9-42CB-BD72-9F388BD5D842, OS:18.1, name:iPhone SE (3rd generation) }
{ platform:iOS Simulator, id:6DF44C4A-27F9-42CB-BD72-9F388BD5D842, OS:18.1, name:iPhone SE (3rd generation) }
ARCHIVE FAILED The following build commands failed:
Ld /Users/[Name]/Library/Developer/Xcode/DerivedData/HBuilder-fybyahscpyhbivgctwpbphcvyukx/Build/Intermediates.noindex/ArchiveIntermediates/HBuilder/InstallationBuildProductsLocation/Applications/HBuilder.app/HBuilder normal (in target 'HBuilder' from project 'HBuilder')
Archiving project HBuilder with scheme HBuilder
(2 failures)
Ask小助手 - Ask社区AI助手
该问题请在专业群( uni-app 官方技术交流群 1 ) 咨询,群中有相关专业的管理员和群友。
【官方评审意见】
一、反馈质量评估
-
描述完整性
- 已提供报错关键日志、复现步骤、预期/实际结果、环境信息(HBuilderX 4.87、iOS 26、云打包)。
- 缺少可直接复现的 demo 或最小化工程,也没有贴出 manifest.json / uni_modules 依赖列表,无法 100 % 还原现场。
- 报错日志中大量「pointer not aligned」「category conflict」等提示,未说明是否使用了第三方原生 SDK(如高德地图、扫码、视频播放等)。建议补充:
– manifest.json 中使用的模块列表
– 是否自定义了原生插件 / Pod 依赖
– 是否做过离线基座验证
-
复现步骤清晰度
- 仅写“云打包 iOS 能编译成功但最后打包失败”,步骤过于笼统。需要补充:
– 具体使用的云打包证书类型(Ad-hoc / App Store / 企业)
– 是否勾选 bitcode、是否开启 Swift 支持
– 是否使用了自定义调试基座并通过验证
- 仅写“云打包 iOS 能编译成功但最后打包失败”,步骤过于笼统。需要补充:
-
版本与平台匹配
- 用户填写的“手机 OS 系统版本 iOS 26”目前 Xcode 16 尚未正式发布 iOS 26 SDK,云打包环境最高为 Xcode 16.1 / iOS SDK 18.1(见知识库)。此处应为误填或概念混淆,需确认真实目标系统版本。
- HBuilderX 4.87 为当前最新正式版,无需升级。
-
是否为误报
- 从日志看,链接器报 “ld: unaligned pointer(s) for architecture arm64” 属于二进制格式错误,一般由以下原因导致:
– 引用的静态库 / framework 未针对 arm64 做正确对齐(常见于老版本高德地图、老版本 uni SDK 中的 protobuf 实现)。
– 同时存在重复 Category 导致链接冲突(libDCUniBarcode、libDCUniVideo)。 - 因此并非误报,但需进一步定位是哪一段库引起。
- 从日志看,链接器报 “ld: unaligned pointer(s) for architecture arm64” 属于二进制格式错误,一般由以下原因导致:
二、问题根因推断
- 云打包环境固定为 Xcode 16.1 / iOS SDK 18.1,不支持 iOS 26 私有 API;若引用的第三方库已使用 iOS 26 新增 API,则会直接链接失败。
- 日志中 MAMapKit 出现 “unaligned pointer” 是高德地图旧版 SDK 已知问题,官方已在 9.5.0 之后修复。
- liblibPGInvocation.a、libDCUniBarcode.a 等冲突属于 uni-app 内部模块重复集成,常见于:
– 同时引入DCUniBarcode与DCUniVideo插件,二者都扩展了 UIImageView 的同名 Category;
– 手动拖入旧版 .a 文件,与云端自动集成的版本重复。
三、处理建议
-
立即尝试
- 在 manifest.json → “App模块权限配置” 中暂时关闭「高德地图」「扫码」「视频播放」模块,重新云打包,观察是否通过。若通过,则逐个开启以定位冲突模块。
- 若项目必须使用高德地图,请将 SDK 升级到 9.6.0 及以上(插件市场已有新版 高德地图)。
-
清理重复依赖
- 检查
nativeplugins或uni_modules下是否手动放置了libDCUniBarcode.a、libDCUniVideo.a等旧文件,如有请删除,让云端自动集成。
- 检查
-
使用离线打包验证
- 本地 Xcode 16.1 离线打包,若同样报错,则 100 % 确认是第三方库问题;若离线成功,则可能是云打包缓存,可提交工单附带 AppId 让我们清理缓存。
-
临时规避
- 如急需出包,可先移除冲突模块,改用 H5+ 原生插件或 JS SDK 方式实现扫码、视频播放功能。
四、后续需要用户补充的信息
- manifest.json 完整截图(含模块、SDK 版本)
- 插件市场已安装的原生插件列表
- 是否做过离线打包验证及结果
- 真实目标 iOS 系统版本(iOS 18 / 17 / 16?)
请按以上步骤自查并补充信息,我们将继续跟进。