编译RxAlamofire时出现CompileSwiftSources非零退出码错误求助
错误信息
CompileSwiftSources normal arm64 com.apple.xcode.tools.swift.compiler (in target 'RxAlamofire' from project 'Pods')
cd /Users/annanovas/Desktop/OfficeProject/partha/bds-ma-ios/Pods
export DEVELOPER_DIR=/Applications/Xcode.app/Contents/Developer
export SDKROOT=/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS15.5.sdk/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/swiftc -incremental -module-name RxAlamofire -Onone -enable-batch-mode -enforce-exclusivity=checked @/Users/annanovas/Library/Developer/Xcode/DerivedData/BDS-MA-cvhuwklfttcxblggixgkwwcpsbww/Build/Intermediates.noindex/Pods.build/Debug-iphoneos/RxAlamofire.build/Objects-normal/arm64/RxAlamofire.SwiftFileList -DDEBUG -D COCOAPODS -sdk /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS15.5.sdk -target arm64-apple-ios9.0 -g -module-cache-path /Users/annanovas/Library/Developer/Xcode/DerivedData/ModuleCache.noindex -Xfrontend -serialize-debugging-options -embed-bitcode-marker -enable-testing -index-store-path /Users/annanovas/Library/Developer/Xcode/DerivedData/BDS-MA-cvhuwklfttcxblggixgkwwcpsbww/Index/DataStore -swift-version 5 -I /Users/annanovas/Library/Developer/Xcode/DerivedData/BDS-MA-cvhuwklfttcxblggixgkwwcpsbww/Build/Products/Debug-iphoneos/RxAlamofire -F /Users/annanovas/Library/Developer/Xcode/DerivedData/BDS-MA-cvhuwklfttcxblggixgkwwcpsbww/Build/Products/Debug-iphoneos/RxAlamofire -F /Users/annanovas/Library/Developer/Xcode/DerivedData/BDS-MA-cvhuwklfttcxblggixgkwwcpsbww/Build/Products/Debug-iphoneos/Alamofire -F /Users/annanovas/Library/Developer/Xcode/DerivedData/BDS-MA-cvhuwklfttcxblggixgkwwcpsbww/Build/Products/Debug-iphoneos/RxSwift -parse-as-library -c -j6 -output-file-map /Users/annanovas/Library/Developer/Xcode/DerivedData/BDS-MA-cvhuwklfttcxblggixgkwwcpsbww/Build/Intermediates.noindex/Pods.build/Debug-iphoneos/RxAlamofire.build/Objects-normal/arm64/RxAlamofire-OutputFileMap.json -parseable-output -serialize-diagnostics -emit-dependencies -emit-module -emit-module-path /Users/annanovas/Library/Developer/Xcode/DerivedData/BDS-MA-cvhuwklfttcxblggixgkwwcpsbww/Build/Intermediates.noindex/Pods.build/Debug-iphoneos/RxAlamofire.build/Objects-normal/arm64/RxAlamofire.swiftmodule -Xcc -I/Users/annanovas/Library/Developer/Xcode/DerivedData/BDS-MA-cvhuwklfttcxblggixgkwwcpsbww/Build/Intermediates.noindex/Pods.build/Debug-iphoneos/RxAlamofire.build/swift-overrides.hmap -Xcc -iquote -Xcc /Users/annanovas/Library/Developer/Xcode/DerivedData/BDS-MA-cvhuwklfttcxblggixgkwwcpsbww/Build/Intermediates.noindex/Pods.build/Debug-iphoneos/RxAlamofire.build/RxAlamofire-generated-files.hmap -Xcc -I/Users/annanovas/Library/Developer/Xcode/DerivedData/BDS-MA-cvhuwklfttcxblggixgkwwcpsbww/Build/Intermediates.noindex/Pods.build/Debug-iphoneos/RxAlamofire.build/RxAlamofire-own-target-headers.hmap -Xcc -I/Users/annanovas/Library/Developer/Xcode/DerivedData/BDS-MA-cvhuwklfttcxblggixgkwwcpsbww/Build/Intermediates.noindex/Pods.build/Debug-iphoneos/RxAlamofire.build/RxAlamofire-all-non-framework-target-headers.hmap -Xcc -ivfsoverlay -Xcc /Users/annanovas/Library/Developer/Xcode/DerivedData/BDS-MA-cvhuwklfttcxblggixgkwwcpsbww/Build/Intermediates.noindex/Pods.build/Debug-iphoneos/RxAlamofire.build/all-product-headers.yaml -Xcc -iquote -Xcc /Users/annanovas/Library/Developer/Xcode/DerivedData/BDS-MA-cvhuwklfttcxblggixgkwwcpsbww/Build/Intermediates.noindex/Pods.build/Debug-iphoneos/RxAlamofire.build/RxAlamofire-project-headers.hmap -Xcc -I/Users/annanovas/Library/Developer/Xcode/DerivedData/BDS-MA-cvhuwklfttcxblggixgkwwcpsbww/Build/Products/Debug-iphoneos/RxAlamofire/include -Xcc -I/Users/annanovas/Library/Developer/Xcode/DerivedData/BDS-MA-cvhuwklfttcxblggixgkwwcpsbww/Build/Intermediates.noindex/Pods.build/Debug-iphoneos/RxAlamofire.build/DerivedSources-normal/arm64 -Xcc -I/Users/annanovas/Library/Developer/Xcode/DerivedData/BDS-MA-cvhuwklfttcxblggixgkwwcpsbww/Build/Intermediates.noindex/Pods.build/Debug-iphoneos/RxAlamofire.build/DerivedSources/arm64 -Xcc -I/Users/annanovas/Library/Developer/Xcode/DerivedData/BDS-MA-cvhuwklfttcxblggixgkwwcpsbww/Build/Intermediates.noindex/Pods.build/Debug-iphoneos/RxAlamofire.build/DerivedSources -Xcc -DPOD_CONFIGURATION_DEBUG=1 -Xcc -DDEBUG=1 -Xcc -DCOCOAPODS=1 -emit-objc-header -emit-objc-header-path /Users/annanovas/Library/Developer/Xcode/DerivedData/BDS-MA-cvhuwklfttcxblggixgkwwcpsbww/Build/Intermediates.noindex/Pods.build/Debug-iphoneos/RxAlamofire.build/Objects-normal/arm64/RxAlamofire-Swift.h -import-underlying-module -Xcc -ivfsoverlay -Xcc /Users/annanovas/Library/Developer/Xcode/DerivedData/BDS-MA-cvhuwklfttcxblggixgkwwcpsbww/Build/Intermediates.noindex/Pods.build/Debug-iphoneos/RxAlamofire.build/unextended-module-overlay.yaml -working-directory /Users/annanovas/Desktop/OfficeProject/partha/bds-ma-ios/Pods
Command CompileSwiftSources failed with a nonzero exit code
常见原因及解决步骤
1. 依赖版本不兼容
RxAlamofire对Alamofire和RxSwift的版本有严格依赖,版本不匹配会直接导致编译失败。比如RxAlamofire 6.x系列需要搭配Alamofire 5.x和RxSwift 6.x。
- 解决:
- 打开项目的
Podfile,明确指定兼容的版本:pod 'RxAlamofire', '~> 6.2.0' pod 'Alamofire', '~> 5.6.4' pod 'RxSwift', '~> 6.5.0' - 执行命令清理并重新安装依赖:
pod deintegrate pod install
- 打开项目的
2. DerivedData缓存损坏
Xcode的DerivedData目录存储编译中间文件,一旦缓存损坏,会导致编译时引用错误资源。
- 解决:
- 关闭Xcode,删除当前项目的DerivedData目录:
rm -rf ~/Library/Developer/Xcode/DerivedData/BDS-MA-cvhuwklfttcxblggixgkwwcpsbww - 重新打开Xcode,执行
Clean Build Folder(快捷键Cmd+Shift+K),再尝试编译。
- 关闭Xcode,删除当前项目的DerivedData目录:
3. Swift/SDK版本不匹配
从编译命令看,项目使用Swift 5、目标iOS 9.0、SDK为iOS15.5。如果RxAlamofire的代码使用了更高版本Swift语法,或者目标iOS版本低于库要求的最低版本,会触发编译错误。
- 解决:
- 在
Podfile末尾添加配置,统一Pods的Swift版本:post_install do |installer| installer.pods_project.targets.each do |target| target.build_configurations.each do |config| config.build_settings['SWIFT_VERSION'] = '5.0' end end end - 检查RxAlamofire的最低iOS要求,比如6.x版本最低支持iOS10.0,若项目目标版本低于此,需升级项目目标版本或降级RxAlamofire到兼容版本。
- 在
4. Pod依赖文件损坏或权限问题
Pods目录下的RxAlamofire文件可能因网络问题下载不完整,或者当前用户没有读写权限导致编译失败。
- 解决:
- 删除Pods目录和锁文件:
rm -rf Pods Podfile.lock - 重新执行
pod install拉取完整依赖。 - 若存在权限问题,修复项目目录权限:
chmod -R 755 /Users/annanovas/Desktop/OfficeProject/partha/bds-ma-ios
- 删除Pods目录和锁文件:
5. 增量编译冲突
编译命令中启用了增量编译(-incremental),增量缓存的冲突也可能导致编译失败。
- 解决:
- 在Xcode中打开Pods项目,找到RxAlamofire目标的
Build Settings。 - 搜索
Incremental Build,设置为No。 - 执行
Clean Build Folder后重新编译。
- 在Xcode中打开Pods项目,找到RxAlamofire目标的
内容的提问来源于stack exchange,提问作者Partha Pratim Das

