ios build fails with Pods and CONFIGURATION_BUILD_DIR configured
See original GitHub issueBug Report
Running a cordova build on ios which uses pods with sub folders fails in PhaseScriptExecution [CP]\ Copy\ Pods\ Resources
Problem
Certain pods have an hierarchy which needs to be dynamically adjusted per pod via the CONFIGURATION_BUILD_DIR argument. If this argument is already set then its value can’t be overridden and the pods folder structure will no longer match the expected structure.
The following command is generated by cordova which causes the build to fail: (notice the “CONFIGURATION_BUILD_DIR” argument)
xcodebuild -workspace HelloCordova.xcworkspace -scheme HelloCordova -configuration Release -destination generic/platform=iOS -archivePath HelloCordova.xcarchive archive CONFIGURATION_BUILD_DIR=/Users/michael.shemesh/dev/mobtest/cordova-hello-world/platforms/ios/build/device SHARED_PRECOMPS_DIR=/Users/michael.shemesh/dev/mobtest/cordova-hello-world/platforms/ios/build/sharedpch
Running the same without the “CONFIGURATION_BUILD_DIR” argument will make the build pass:
xcodebuild -workspace HelloCordova.xcworkspace -scheme HelloCordova -configuration Release -destination generic/platform=iOS -archivePath HelloCordova.xcarchive archive SHARED_PRECOMPS_DIR=/Users/michael.shemesh/dev/mobtest/cordova-hello-world/platforms/ios/build/sharedpch
What is expected to happen?
Allow to provide a parameter to disable setting the CONFIGURATION_BUILD_DIR argument. (Setting it to empty also doesn’t work since it is still counted by xcode as having a value)
The following is the code section which I wish to disable: cordova/lib/build.js#L351
What does actually happen?
The ios build fails with the following error:
PhaseScriptExecution [CP]\ Copy\ Pods\ Resources /Users/<username>/Library/Developer/Xcode/DerivedData/Thryv-gfricshxsupkdfguznnnhnawnjkb/Build/Intermediates.noindex/ArchiveIntermediates/Thryv/IntermediateBuildFilesPath/Thryv.build/Release-iphoneos/Thryv.build/Script-201964EF33584F706397D9EB.sh
cd /Users/<username>/dev/mobile-app-generator/build/platforms/ios
/bin/sh -c /Users/<username>/Library/Developer/Xcode/DerivedData/Thryv-gfricshxsupkdfguznnnhnawnjkb/Build/Intermediates.noindex/ArchiveIntermediates/Thryv/IntermediateBuildFilesPath/Thryv.build/Release-iphoneos/Thryv.build/Script-201964EF33584F706397D9EB.sh
error: Resource "/Users/<username>/Library/Developer/Xcode/DerivedData/Thryv-gfricshxsupkdfguznnnhnawnjkb/Build/Intermediates.noindex/ArchiveIntermediates/Thryv/BuildProductsPath/Release-iphoneos/Braintree/Braintree-UI-Localization.bundle" not found. Run 'pod install' to update the copy resources script.
Information
Create a new cordova project, add the following to the config.xml
file:
<plugin name="phonegap-plugin-push" spec="^2.2.3" />
Add the ios platform:
cordova platform add ios@5.0.1
Open the workspace in xcode and add code signing.
Build the project using cordova and see that it works:
cordova build ios --release --device
Add the following to your Podfile:
pod 'Braintree', '~> 4.23.0'
pod 'BraintreeDropIn'
Run pod install
Now try to build the project again and the error will be shown:
cordova build ios --release --device
Environment, Platform, Device
~/dev/cordova-hello-world » cordova -v 9.0.0 (cordova-lib@9.0.1)
~/dev/cordova-hello-world » pod env
Stack
CocoaPods : 1.7.5
Ruby : ruby 2.1.5p273 (2014-11-13 revision 48405) [x86_64-darwin18.0]
RubyGems : 3.0.4
Host : Mac OS X 10.14.6 (18G87)
Xcode : 10.3 (10G8)
Git : git version 2.22.0
Ruby lib dir : /Users/michael.shemesh/.rvm/rubies/ruby-2.1.5/lib
Repositories : master - https://github.com/CocoaPods/Specs.git @ a4d0bc49a0346483284c63ecd0b9c31b2453ee14
Installation Source
Executable Path: /Users/michael.shemesh/.rvm/gems/ruby-2.1.5/bin/pod
Plugins
cocoapods-deintegrate : 1.0.4
cocoapods-plugins : 1.0.0
cocoapods-search : 1.0.0
cocoapods-stats : 1.1.0
cocoapods-trunk : 1.3.1
cocoapods-try : 1.1.0
Checklist
- I searched for existing GitHub issues
- I updated all Cordova tooling to most recent version
- I included all the necessary information above
Issue Analytics
- State:
- Created 4 years ago
- Reactions:17
- Comments:10 (1 by maintainers)
Top GitHub Comments
Any chance of having the #671 merged for the next big update? This is currently blocking us from building our apps throught command line interface and enabling build automation?
any plans on this?