将框架embedded框架iOS中
我有一个项目包含另一个目标(框架),这是主项目的依赖项。 该框架需要它自己的框架,所以我已经使用Carthage添加了它们。 该项目编译并在模拟器上运行良好,但是我在物理设备上运行时遇到以下错误:
dyld: Library not loaded: @rpath/Subframework.framework/Subframework Referenced from: /private/var/mobile/Containers/Bundle/Application/LONG-ID/MyApp.app/Frameworks/MyAppSDK.framework/MyAppSDK Reason: no suitable image found. Did find: /private/var/mobile/Containers/Bundle/Application/LONG-ID/MyApp.app/Frameworks/MyAppSDK.framework/Frameworks/Subframework.framework/Subframework: mmap() error 1 at address=0x00798000, size=0x00060000 segment=__TEXT in Segment::map() mapping /private/var/mobile/Containers/Bundle/Application/LONG-ID/MyApp.app/Frameworks/MyAppSDK.framework/Frameworks/Subframework.framework/Subframework
我已经尝试过,但唯一的解决scheme是添加子框架“embedded框架”到顶级项目,这是不可行的。 我已经尝试修改生成设置 – >链接 – >dynamic库安装名称,但它没有帮助。
如何才能实现在iPhone上工作?
我也面对这个问题一段时间,我有一个三级的层次结构,其中最外层的“伞形框架”不应该与其他框架一起分发。 我如何解决这个问题的方法是在每个“Umbrella Framework”的“Build Settings”的“Linking”中设置“Run Search Paths”,指向“Build Phase”中设置的“Copy Files”必须添加一个“复制文件”构build阶段,最好将其目标设置为“框架”,然后添加每个要embedded的“子框架”)。
将子框架复制到“框架”
将“运行pathsearchpath”设置为“框架”