Details
-
Bug
-
Status: Closed
-
Minor
-
Resolution: Cannot Reproduce
-
cordova-ios@4.5.4
-
None
-
None
Description
Including the FBSDK as a pod causes the build to fail using the command line.
Building with Xcode still works.
Command that fails:
cordova build ios --release
Error Message:
'Bolts/BFAppLink.h' file not found
#import <Bolts/BFAppLink.h>
The plugin includes the FBSDK as:
<framework src="FBSDKCoreKit" type="podspec" spec="4.32.0" />
<framework src="FBSDKLoginKit" type="podspec" spec="4.32.0" />
<framework src="FBSDKShareKit" type="podspec" spec="4.32.0" />
The PodFile looks like:
- DO NOT MODIFY – auto-generated by Apache Cordova
platform :ios, '8.0'
target 'MegaFameCasino' do
project 'MegaFameCasino.xcodeproj'
pod 'FBSDKCoreKit', '4.32.0'
pod 'FBSDKLoginKit', '4.32.0'
pod 'FBSDKShareKit', '4.32.0'
end
The FBSDKCoreKit pod depends on the Bolts pod and includes header files from it.
----------------------------------------------------------------------------------------------
I think there may be some sort of issue with the ${SRCROOT} variable in xcodebuild or
something cordova is doing that I couldn't find
Looking at the commands run by xcodebuild, the include paths are getting set as ios/Pods/Pods/xxxx
I assume this is incorrect
-I/project-path/platforms/ios/Pods/Pods/Headers/Public/Bolts
If I go into "platforms/ios/Pods/Target Support Files/Pods/MegaFameCasino/Pods-MegaFameCasino.release.xcconfig"
and remove the trailing /Pods from PODS_ROOT:
PODS_ROOT = ${SRCROOT}/Pods ----> PODS_ROOT = ${SRCROOT}
then the includes look correct:
-I/project-path/platforms/ios/Pods/Headers/Public/Bolts
Doing this gets the build further down past the pods, but it will then fail later at
diff: /project-path/platforms/ios/Manifest.lock: No such file or directory
error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.