我正在使用Xcode 7.2和Swift2。部署目标是ios 9.0
这个问题与之前提出的许多问题类似,但是我的问题并不普遍,或者没有找到任何参考。
我为iOS创建了一个可可触摸框架,该框架具有混合代码(包括swift和objC),并且包含了Cocoapods中的一些库。 (FMDB,ObjectMapper,HockeySDK)
我在同一项目中有另一个目标,该目标有一个示例应用程序,其中包含我的框架。现在,当我尝试在设备上运行它时,安装后,它立即向我抛出此运行时错误,
dyld:库未加载:@ rpath / FMDB.framework / FMDB引用
从:
/ private / var / mobile /容器/捆绑/应用程序/0A768355-B7F9-4B1C-AE0D-D2ED57A7E1D6/SwiftExample.app/Frameworks/MyFramework.framework/MyFramework
原因:找不到图像。
我已经尝试了所有这些操作:
我的PodFile具有以下desc:
source 'https://github.com/CocoaPods/Specs.git'
use_frameworks!
platform :ios, '9.0'
xcodeproj 'MyFramework'
target :'MyFramework' do
pod 'HockeySDK', '~> 3.8.4'
pod 'FMDB'
pod 'OpenSSL-iOS', '~> 1.0'
pod 'GoogleAnalytics'
pod 'ObjectMapper', '~> 1.0'
end
我有什么想念的或者做错了吗?
最佳答案
今天早上我遇到了同样的问题。我通过以下方法解决了这一问题:(1)以静态链接而非动态链接的方式编译FMDB框架; (2)在我的应用程序的“框架”部分中将链接添加到“libsqlite3.dylib”库。
为此,请执行以下操作(1):在XCode中,打开FMDB框架项目,然后在“项目”编辑器中,在框架的“构建设置”选项卡下的“链接”子部分中,将“Mach-O类型”更改为“静态库”,然后重新构建框架。
要执行(2),再次在XCode中,打开您的应用程序项目,然后在项目编辑器中,该应用程序的“常规”选项卡下的“链接的框架和库”小节中,添加“libsqlite3.dylib”。
关于ios - dyld:库未加载:@ rpath/FMDB.framework/FMDB,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/34394146/