xCode: Library not found - lPods-Bolts - Exit Code

2019-02-24 09:33发布

问题:

Hi I'm having this issue:

ld: library not found for -lPods-Bolts

clang: error: linker command failed with exit code 1 (use -v to see invocation)

However, I downloaded the Bolt package from the Facebook Docs and put it into my supporting files. In addition, I'm using Cocoapods so I also downloaded Bolt using Cocoapods.

Ld /Users/mmk88/Library/Developer/Xcode/DerivedData/Jobazo-gejnfogovpyqypgovssmomabbuhl/Build/Products/Debug-iphoneos\ /Jobazo.app/Jobazo normal arm64
    cd /Users/mmk88/Desktop/Jobazo
    export IPHONEOS_DEPLOYMENT_TARGET=8.1
    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/mmk88/Library/Developer/Xcode/DerivedData/Jobazo-gejnfogovpyqypgovssmomabbuhl/Build/Products/Debug-iphoneos\
-F/Users/mmk88/Library/Developer/Xcode/DerivedData/Jobazo-gejnfogovpyqypgovssmomabbuhl/Build/Products/Debug-iphoneos\
-F/Users/mmk88/Desktop/Jobazo/Pods/Parse -F/Users/mmk88/Desktop/Jobazo/Pods/Parse-iOS -F/Users/mmk88/Desktop/Jobazo/Pods/ParseFacebookUtils -F/Users/mmk88/Documents/FacebookSDK -F/Users/mmk88/Desktop/Jobazo/Jobazo -filelist /Users/mmk88/Library/Developer/Xcode/DerivedData/Jobazo-gejnfogovpyqypgovssmomabbuhl/Build/Intermediates/Jobazo.build/Debug-iphoneos/Jobazo.build/Objects-normal/arm64/Jobazo.LinkFileList
-Xlinker -rpath -Xlinker @executable_path/Frameworks -dead_strip -ObjC -lPods-Bolts -lPods-Facebook-iOS-SDK -lPods-JSMessagesViewController -lPods-JSQSystemSoundPlayer -lPods-Parse -lPods-Parse-iOS -lPods-ParseFacebookUtils -lsqlite3 -lz -framework AudioToolbox -framework CFNetwork -framework CoreGraphics -framework CoreLocation -framework Foundation -framework MobileCoreServices -framework Parse -framework ParseFacebookUtils -framework QuartzCore -framework Security -framework StoreKit -framework SystemConfiguration -framework UIKit -weak_framework Accounts -weak_framework AdSupport
-weak_framework AudioToolbox -weak_framework CoreGraphics -weak_framework CoreLocation -weak_framework Foundation -weak_framework QuartzCore -weak_framework Security -weak_framework Social -weak_framework UIKit -fobjc-arc -fobjc-link-runtime
-miphoneos-version-min=8.1 -lPods-JSQMessagesViewController -framework AudioToolbox -framework QuartzCore -framework Bolts -lPods-Bolts
-lPods-Facebook-iOS-SDK -lPods-JSMessagesViewController -lPods-JSQSystemSoundPlayer -lPods-Parse-iOS -lPods-Parse -lPods-ParseFacebookUtils -lPods -Xlinker -dependency_info -Xlinker /Users/mmk88/Library/Developer/Xcode/DerivedData/Jobazo-gejnfogovpyqypgovssmomabbuhl/Build/Intermediates/Jobazo.build/Debug-iphoneos/Jobazo.build/Objects-normal/arm64/Jobazo_dependency_info.dat -o /Users/mmk88/Library/Developer/Xcode/DerivedData/Jobazo-gejnfogovpyqypgovssmomabbuhl/Build/Products/Debug-iphoneos\ /Jobazo.app/Jobazo

Podfile:

source 'https://github.com/CocoaPods/Specs.git'  

platform :ios, '6.0' 

pod 'Parse-iOS' 

pod 'ParseFacebookUtils'  

pod 'JSMessagesViewController' 

pod 'Bolts'

回答1:

Typically this can happen sometimes when one of your pod dependencies is accidentally added to the Build Phases pane under "Link Binary With Libraries" of your Targets settings.

Removing the library ".a" file from the Build Phase should do the trick.



回答2:

My problem was that I changed the name of the project, so I reinstalled pods and in "Link Binary With Libraries" I had to delete "libPods-(old_pods_name).a" and also "Bolts.framework" and "Restkit.framework". Then reinstalled pods That worked for me!!!



回答3:

I resolved this problem, by switching scheme to Pods-xxx, and build it first. Then, switch back to original project, and build it.

Let Pods-xxx build the necessary xxx.a first, resolve the dependency problem.

Switch scheme

On the toolbar, select

Product -> Scheme -> (Pods-xxx or original target)