执行ionic cordova build ios --release时构建失败,求解决方案
我之前也碰到过一模一样的Xcode链接错误导致构建失败的情况,结合自己的排查经验和社区常见解决方案,给你几个可以尝试的步骤:
1. 彻底清理缓存与重建iOS平台
衍生数据和旧平台文件的缓存问题是这类错误的高发原因:
- 先关闭Xcode,找到并删除错误日志里提到的衍生数据文件夹:
/Users/anilram25/Library/Developer/Xcode/DerivedData/Projectname-dhymtjexvkoysbcnqkakvypnvisi - 在项目根目录执行以下命令移除并重新添加iOS平台:
ionic cordova platform rm ios ionic cordova platform add ios - 之后再尝试执行构建命令:
ionic cordova build ios --release
2. 检查Xcode的签名与构建配置
Release构建对签名和架构配置要求更严格,很容易在这里出问题:
- 打开项目
platforms/ios目录下的Projectname.xcworkspace文件 - 选中项目Target,切换到Signing & Capabilities标签,确认Release配置下的Team、Bundle ID设置正确,没有红色警告
- 切换到Build Settings标签,检查
Architectures设置为Standard Architectures (arm64, x86_64),避免自定义架构引发不兼容 - 尝试直接在Xcode中构建Release版本到模拟器,这样能看到更详细的错误提示,方便定位问题
3. 排查第三方Cordova插件的兼容性
很多Ld链接错误都是因为插件的原生代码有冲突或者版本不兼容:
- 回忆一下最近是否添加了新插件,先移除它再尝试构建,看是否恢复正常
- 如果不确定是哪个插件,可以逐个移除插件并重新构建,找到有问题的插件后,更新到最新版本或者替换为兼容的替代插件
4. 更新相关工具到稳定版本
工具版本不匹配也可能导致这类构建错误:
- 更新Ionic和Cordova到最新稳定版:
npm install -g ionic@latest cordova@latest - 打开App Store将Xcode更新到最新版本,然后打开Xcode,在
Xcode -> Preferences -> Locations中确认Command Line Tools选择了对应的最新版本
原始错误信息
The following build commands failed: Ld /Users/anilram25/Library/Developer/Xcode/DerivedData/Projectname-dhymtjexvkoysbcnqkakvypnvisi/Build/Intermediates.noindex/Projectname.build/Release-iphonesimulator/Projectname.build/Objects-normal/x86_64/Projectname normal x86_64 (1 failure)
Error: Error code 65 for command: xcodebuild with args: -xcconfig,/Users/anilram25/Project/0.2.9/platforms/ios/cordova/build-release.xcconfig,-workspace,Projectname.xcworkspace,-scheme,Projectname,-configuration,Release,-sdk,iphonesimulator,-destination,platform=iOS Simulator,name=iPhone X,build,CONFIGURATION_BUILD_DIR=/Users/anilram25/Project/0.2.9/platforms/ios/build/emulator,SHARED_PRECOMPS_DIR=/Users/anilram25/Project/0.2.9/platforms/ios/build/sharedpch
[ERROR] An error occurred while running cordova build ios --release (exit code 1).
内容的提问来源于stack exchange,提问作者Anil Kumar Ram

