Summary
CloudX 2.2.1-beta xcframeworks ship with malformed _CodeSignature directories that cause Xcode 26's builtin-collectSignature to fail during Archive builds with:
signature-collection failed: The operation couldn't be completed. (SWBUtil.CodeSignatureInfo.Error error 0.)
CloudX 2.0.0 did not include any _CodeSignature directories and built successfully with the same Xcode version.
Environment
- Xcode: 26.2
- CloudX SDK: 2.2.1-beta (via CocoaPods)
- CloudX 2.0.0: works fine with the same Xcode version
- Platform: iOS, Unity project exported to Xcode workspace
Root Cause Analysis
Comparing 2.0.0 and 2.2.1-beta xcframeworks:
|
2.0.0 |
2.2.1-beta |
_CodeSignature dirs |
0 |
Present in all frameworks |
The 2.2.1-beta frameworks appear to have been built with Xcode 26.2 (DTXcode: 2620, DTXcodeBuild: 17C52 in Info.plist), which auto-generates _CodeSignature directories. However, the signatures are malformed:
- CloudXCore.framework: Has
_CodeSignature with only CodeResources — missing CodeDirectory, CodeRequirements, and CodeSignature files. This is an incomplete/invalid signature.
- Adapter frameworks (CloudXInMobiAdapter, CloudXMetaAdapter, CloudXMintegralAdapter, CloudXVungleAdapter): These are static archives (current ar archive) wrapped in .framework bundles, which have
_CodeSignature directories that Xcode 26's signature collector cannot process for static libraries.
When Xcode 26 encounters these malformed signatures during builtin-collectSignature, it fails with SWBUtil.CodeSignatureInfo.Error error 0.
Reproduction
- Create an iOS project with CocoaPods
- Add CloudX 2.2.1-beta pods (CloudXCore, CloudXRenderer, any adapters)
- Run
pod install
- Archive the project in Xcode 26.2
- Build fails on
SignatureCollection phase
Workaround
Stripping the _CodeSignature directories in a CocoaPods post_install hook allows the build to proceed:
post_install do |installer|
pods_dir = installer.sandbox.root.to_s
Dir.glob("#{pods_dir}/CloudX*/**/_CodeSignature").each do |sig|
FileUtils.rm_rf(sig)
end
end
Suggested Fix
Either:
- Build xcframeworks without code signing (matching 2.0.0 behavior), or
- Ensure proper ad-hoc signing is applied so
_CodeSignature directories are complete and valid
This likely requires reviewing the build/release scripts to ensure codesign is either skipped or run correctly for all framework types (especially static library adapters).
Related
Summary
CloudX 2.2.1-beta xcframeworks ship with malformed
_CodeSignaturedirectories that cause Xcode 26'sbuiltin-collectSignatureto fail during Archive builds with:CloudX 2.0.0 did not include any
_CodeSignaturedirectories and built successfully with the same Xcode version.Environment
Root Cause Analysis
Comparing 2.0.0 and 2.2.1-beta xcframeworks:
_CodeSignaturedirsThe 2.2.1-beta frameworks appear to have been built with Xcode 26.2 (DTXcode: 2620, DTXcodeBuild: 17C52 in Info.plist), which auto-generates
_CodeSignaturedirectories. However, the signatures are malformed:_CodeSignaturewith onlyCodeResources— missingCodeDirectory,CodeRequirements, andCodeSignaturefiles. This is an incomplete/invalid signature._CodeSignaturedirectories that Xcode 26's signature collector cannot process for static libraries.When Xcode 26 encounters these malformed signatures during
builtin-collectSignature, it fails withSWBUtil.CodeSignatureInfo.Error error 0.Reproduction
pod installSignatureCollectionphaseWorkaround
Stripping the
_CodeSignaturedirectories in a CocoaPodspost_installhook allows the build to proceed:Suggested Fix
Either:
_CodeSignaturedirectories are complete and validThis likely requires reviewing the build/release scripts to ensure codesign is either skipped or run correctly for all framework types (especially static library adapters).
Related