我最近开始使用
CocoaPods来管理现有ios项目中的依赖项.我在运行OS X 10.11.1(El Capitan)的Mac上使用
Xcode 7.1.1.
问题是我似乎仍然必须明确链接链接二进制文件中的框架与构建阶段的库部分,或者我得到的错误消息“_ OBJC_CLASS _ $_ Crashlytics”,引用自:ld:symbol(s)找不到体系结构x86_64 …我在CocoaPods管理的依赖项中定义的类中得到了许多这些错误.如果我在目标的Link Binary with Libraries部分的Pods项目中明确添加相关框架,一切正常,但根据我的理解,这不应该是必要的.
这是podfile:
# Uncomment this line to define a global platform for your project platform :ios,'7.0' # Uncomment this line if you're using Swift # use_frameworks! workspace 'myproject' def shared_pods pod 'ParseUI' pod 'ParseCrashReporting' pod 'Fabric' pod 'Crashlytics' end target 'myproject' do shared_pods end target 'myprojectTests' do shared_pods pod 'OHHTTPStubs' end
我猜这与我将pod mgmt添加到现有项目的事实有关.我尝试过不同的Podfile配置,我尝试删除并重新安装,到目前为止没有任何工作……防止错误的唯一可靠解决方案是显式链接Pods目录中的相关框架.
任何帮助非常感谢
解决方法
我有一个类似的问题,其中编译好的库,但链接时找不到.
在我的Podfile(cocoapod版本1.2.1)中:
abstract_target 'Global' do pod 'pod-name','~> 1.0,0',:configurations => ['Alpha','Release'] pod 'pod-nme2',:configurations => ['Release'] target 'MyTarget' do end end
问题是,当我检查目标用于编译代码的模式时,运行时使用的配置等是“调试”而不是“Alpha”,如配置下的Podfile所述.
链接应用程序时,它将失败,缺少所有包含的库!
“架构x86_64的未定义符号:”