Cocoapods -lPods- {pod name} mach-o链接器错误

时间:2015-01-19 03:47:35

标签: xcode swift cocoapods

在构建项目中使用多个方案,我在所有方案归档过程中都会收到此错误:

Ld /Users/daniel.kim/Library/Developer/Xcode/DerivedData/project-dmzuaarzxovfpwglmdnamvbivecp/Build/Intermediates/ArchiveIntermediates/project-release-prod/IntermediateBuildFilesPath/project.build/ReleaseProd-iphoneos/project.build/Objects-normal/arm64/project normal arm64
    cd /Users/daniel.kim/Projects/7-11/project-ios-2-0
    export IPHONEOS_DEPLOYMENT_TARGET=7.0
    export PATH="/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Applications/Xcode.app/Contents/Developer/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin"
    /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang -arch arm64 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS8.1.sdk -L/Users/daniel.kim/Library/Developer/Xcode/DerivedData/project-dmzuaarzxovfpwglmdnamvbivecp/Build/Intermediates/ArchiveIntermediates/project-release-prod/BuildProductsPath/ReleaseProd-iphoneos -L/Users/daniel.kim/Projects/7-11/project-ios-2-0/Pods/FlurrySDK/Flurry -F/Users/daniel.kim/Library/Developer/Xcode/DerivedData/project-dmzuaarzxovfpwglmdnamvbivecp/Build/Intermediates/ArchiveIntermediates/project-release-prod/BuildProductsPath/ReleaseProd-iphoneos -filelist /Users/daniel.kim/Library/Developer/Xcode/DerivedData/project-dmzuaarzxovfpwglmdnamvbivecp/Build/Intermediates/ArchiveIntermediates/project-release-prod/IntermediateBuildFilesPath/project.build/ReleaseProd-iphoneos/project.build/Objects-normal/arm64/project.LinkFileList -dead_strip -ObjC -lFlurry_5.4.0 -lPods-AFNetworking -lPods-AFOAuth2Client -lPods-AsyncImageView -lPods-Bugsnag -lPods-FXPageControl -lPods-FlurrySDK -lPods-ISO8601DateFormatter -lPods-MBProgressHUD -lPods-MMDrawerController -lPods-Mantle -lPods-RSBarcodes -lc++ -lz -framework AVFoundation -framework CoreGraphics -framework CoreImage -framework Foundation -framework MediaPlayer -framework MobileCoreServices -framework QuartzCore -framework Security -framework SystemConfiguration -framework UIKit -weak_framework AdSupport -weak_framework StoreKit -L/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/swift/iphoneos -Xlinker -force_load -Xlinker /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/arc/libarclite_iphoneos.a -Xlinker -add_ast_path -Xlinker /Users/daniel.kim/Library/Developer/Xcode/DerivedData/project-dmzuaarzxovfpwglmdnamvbivecp/Build/Intermediates/ArchiveIntermediates/project-release-prod/IntermediateBuildFilesPath/project.build/ReleaseProd-iphoneos/project.build/Objects-normal/arm64/project.swiftmodule -fobjc-arc -fobjc-link-runtime -miphoneos-version-min=7.0 -lPods -Xlinker -dependency_info -Xlinker /Users/daniel.kim/Library/Developer/Xcode/DerivedData/project-dmzuaarzxovfpwglmdnamvbivecp/Build/Intermediates/ArchiveIntermediates/project-release-prod/IntermediateBuildFilesPath/project.build/ReleaseProd-iphoneos/project.build/Objects-normal/arm64/project_dependency_info.dat -o /Users/daniel.kim/Library/Developer/Xcode/DerivedData/project-dmzuaarzxovfpwglmdnamvbivecp/Build/Intermediates/ArchiveIntermediates/project-release-prod/IntermediateBuildFilesPath/project.build/ReleaseProd-iphoneos/project.build/Objects-normal/arm64/project

ld: library not found for -lPods-AFNetworking
clang: error: linker command failed with exit code 1 (use -v to see invocation)

我正在使用xcworkspace,尝试过新的pod安装,拥有gem更新系统以及cocoapods,将相关值更改为$(继承)在诸如库搜索路径之类的东西中,检查方案以确保每个方案都没有无关的流程。

这些方案仅用于在我们的测试/生产API服务器进行调试与发布构建时更改环境变量。

尝试改变我能想到的xcode中每个可能的相关设置。

更新:作为一个注释,第一个方案在构建时不会失败,这是我的debug-prod方案。它存档并成功运作。关于cocoapods页面的故障排除有一些提及只有cocoapods自动特定的第一个目标,并且link_with需要用于指定其他目标,但我只有4个方案和一个目标,而不是4个目标...

我需要做些什么来指定和指导cocoapods到那些构建?

4 个答案:

答案 0 :(得分:2)

Edit Scheme -> Archive -> Archive -> Build Configuration下,只需设置正确的配置......

解决了这个问题,他们都指出了由XCode DebugRelease创建的错误的默认Build Configs ....

答案 1 :(得分:0)

确保您的其他导入的xcode项目也实现了这些自定义方案。 更多信息可以在我的帖子中找到:

Swift frameworks do not work with build configurations named other than 'Debug' or 'Release': No such module

答案 2 :(得分:0)

我设法通过确保每个方案都可见(Product-> Scheme-> Manage Schemes-> Tick' Show'或每个pod)来实现这一目标。然后我分别建立了每个pod项目。

之后我可以构建我的项目。我无法解释为什么会这样。

答案 3 :(得分:0)

我遇到了同样的问题,问题是我打开了错误的文件。确保打开.xcworkspace文件。