You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何正确签署包含.dylib文件的xcframework?

Apple平台XCFramework签名问题(物理设备加载失败)

问题背景

开发一款带C兼容接口的跨平台C++库,目标打包为XCFramework分发。使用CMake编译并单独签署各平台二进制文件后,通过xcodebuild -create-xcframework生成XCFramework。仅iOS物理设备加载库时出现签名错误,模拟器、macOS及Catalyst环境下无异常。

当前构建命令

生成XCFramework的命令:

xcodebuild -create-xcframework -library builds/catalyst/Release/mylib.1.1.0.dylib -headers include -library builds/macos/Release/mylib.1.1.0.dylib -headers include -library builds/ios/Release/mylib.1.1.0.dylib -headers include -library builds/ios-sim/Release/mylib.1.1.0.dylib -headers include -output Mylib.xcframework

物理设备加载错误日志

dyld[8339]: Library not loaded: @rpath/mylib.1.1.0.dylib
Referenced from: <3D40ED9F-BDDA-3878-80B7-52E4C1D79471> /private/var/containers/Bundle/Application/212147E0-C36B-413C-95F0-9819D78D0F9B/BasicExample.app/Frameworks/BasedClient.framework/BasedClient
Reason: tried: '/usr/lib/system/introspection/mylib.1.1.0.dylib' (errno=2, not in dyld cache),
'/private/var/containers/Bundle/Application/212147E0-C36B-413C-95F0-9819D78D0F9B/BasicExample.app/Frameworks/mylib.1.1.0.dylib' (code signature invalid in <0E938CE1-2726-3C26-A057-49DAD2351627> '/private/var/containers/Bundle/Application/212147E0-C36B-413C-95F0-9819D78D0F9B/BasicExample.app/Frameworks/mylib.1.1.0.dylib' (errno=1) sliceOffset=0x00000000, codeBlobOffset=0x004F2FF0, codeBlobSize=0x0000E810),
'/private/var/containers/Bundle/Application/212147E0-C36B-413C-95F0-9819D78D0F9B/BasicExample.app/Frameworks/mylib.1.1.0.dylib' (code signature invalid in <0E938CE1-2726-3C26-A057-49DAD2351627> '/private/var/containers/Bundle/Application/212147E0-C36B-413C-95F0-9819D78D0F9B/BasicExample.app/Frameworks/mylib.1.1.0.dylib' (errno=1) sliceOffset=0x00000000, codeBlobOffset=0x004F2FF0, codeBlobSize=0x0000E810),
'/private/preboot/Cryptexes/OS@rpath/mylib.1.1.0.dylib' (errno=2),
'/private/var/containers/Bundle/Application/212147E0-C36B-413C-95F0-9819D78D0F9B/BasicExample.app/Frameworks/mylib.1.1.0.dylib' (code signature invalid in <0E938CE1-2726-3C26-A057-49DAD2351627> '/private/var/containers/Bundle/Application/212147E0-C36B-413C-95F0-9819D78D0F9B/BasicExample.app/Frameworks/mylib.1.1.0.dylib' (errno=1) sliceOffset=0x00000000, codeBlobOffset=0x004F2FF0, codeBlobSize=0x0000E810),
'/private/var/containers/Bundle/Application/212147E0-C36B-413C-95F0-9819D78D0F9B/BasicExample.app/Frameworks/mylib.1.1.0.dylib' (code signature invalid in <0E938CE1-2726-3C26-A057-49DAD2351627> '/private/var/containers/Bundle/Application/212147E0-C36B-413C-95F0-9819D78D0F9B/BasicExample.app/Frameworks/mylib.1.1.0.dylib' (errno=1) sliceOffset=0x00000000, codeBlobOffset=0x004F2FF0, codeBlobSize=0x0000E810),
'/usr/local/lib/mylib.1.1.0.dylib' (errno=2),
'/usr/lib/mylib.1.1.0.dylib' (errno=2, not in dyld cache)

排查情况

  • 单独检查各.dylib文件,签名状态均正常
  • 尝试遵循官方指南使用Xcode归档,执行命令:
    xcodebuild archive -project Mylib.xcodeproj -scheme Mylib -destination "generic/platform=iOS" -archivePath "archives/Mylib" SKIP_INSTALL=NO BUILD_LIBRARY_FOR_DISTRIBUTION=YES
    
    但归档产物的文件结构中出现可疑的@rpath目录:
    .
    └── Mylib_iOS_Simulator.xcarchive
        ├── Info.plist
        ├── Products
        │	└── @rpath
        │	    └── mylib.1.1.0.dylib
        └── dSYMs
    

内容的提问来源于stack exchange,提问作者Francesco M

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.27 17:12:57