0
votes

I am trying to build iOS from ionic 4. But getting stuck due to below error

Using cordova-fetch for cordova-ios@^5.0.0
 Adding ios project...
 Creating Cordova project for the iOS platform:
    Path: platforms/ios
    Package: com.bombaydesigncentre.bloodbuddies
    Name: Blood Buddies
 iOS project created with [email protected]
 Installing "call-number" for ios
 Installing "cordova-open-native-settings" for ios
 Installing "cordova-plugin-androidx" for ios
 Installing "cordova-plugin-androidx-adapter" for ios
 Installing "cordova-plugin-contacts" for ios
 Installing "cordova-plugin-device" for ios
 Installing "cordova-plugin-firebase" for ios
 Installing "cordova-plugin-firebase-authentication" for ios
 Failed to install 'cordova-plugin-firebase-authentication': undefined CordovaError: Promise rejected with non-error: '/Library/Ruby/Gems/2.3.0/gems/claide-1.0.2/lib/claide/command.rb:439:in `help!\': \u001b[31m[!] You cannot run CocoaPods as root.\u001b[39m (CLAide::Help)\n\n\u001b[4mUsage:\u001b[24m\n\n    $ \u001b[32mpod\u001b[39m \u001b[32mCOMMAND\u001b[39m\n\n      CocoaPods, the Cocoa library package manager.\n\n\u001b[4mCommands:\u001b[24m\n\n    \u001b[32m+ cache\u001b[39m      Manipulate the CocoaPods cache\n    \u001b[32m+ env\u001b[39m        Display pod environment\n    \u001b[32m+ init\u001b[39m       Generate a Podfile for the current directory\n    \u001b[32m+ install\u001b[39m    Install project dependencies according to versions from a\n                 Podfile.lock\n    \u001b[32m+ ipc\u001b[39m        Inter-process communication\n    \u001b[32m+ lib\u001b[39m        Develop pods\n    \u001b[32m+ list\u001b[39m       List pods\n    \u001b[32m+ outdated\u001b[39m   Show outdated project dependencies\n    \u001b[32m+ repo\u001b[39m     Manage spec-repositories\n    \u001b[32m+ setup\u001b[39m      Setup the CocoaPods environment\n    \u001b[32m+ spec\u001b[39m       Manage pod specs\n    \u001b[32m+ update\u001b[39m     Update outdated project dependencies and create new Podfile.lock\n\n\u001b[4mOptions:\u001b[24m\n\n    \u001b[34m--silent\u001b[39m     Show nothing\n    \u001b[34m--version\u001b[39m    Show the version of the tool\n    \u001b[34m--verbose\u001b[39m    Show more debugging information\n    \u001b[34m--no-ansi\u001b[39m    Show output without ANSI codes\n    \u001b[34m--help\u001b[39m       Show help banner of specified command\n\tfrom /Library/Ruby/Gems/2.3.0/gems/cocoapods-1.7.5/lib/cocoapods/command.rb:47:in `run\'\n\tfrom /Library/Ruby/Gems/2.3.0/gems/cocoapods-1.7.5/bin/pod:55:in `<top (required)>\'\n\tfrom /usr/local/bin/pod:22:in `load\'\n\tfrom /usr/local/bin/pod:22:in `<main>\'\n'
    at cli.catch.err (/usr/local/lib/node_modules/cordova/bin/cordova:29:15)
    at process._tickCallback (internal/process/next_tick.js:68:7)
 [ERROR] An error occurred while running subprocess cordova.

It is failing while installing cordova-plugin-firebase-authentication

I have tried multiple things like changing the permissions, changing the user of /usr/local/lib/node_modules/cordova but no luck.

Here is the list of plugins used:

  • cordova-open-native-settings 1.5.2 "Native settings"
  • cordova-plugin-androidx 1.0.2 "cordova-plugin-androidx"
  • cordova-plugin-androidx-adapter 1.1.0 "cordova-plugin-androidx-adapter"
  • cordova-plugin-contacts 3.0.1 "Contacts"
  • cordova-plugin-device 2.0.3 "Device"
  • cordova-plugin-firebase 2.0.5 "Google Firebase Plugin"
  • cordova-plugin-firebase-authentication 3.0.0 "cordova-plugin-firebase-authentication"
  • cordova-plugin-geolocation 4.0.2 "Geolocation"
  • cordova-plugin-ionic-keyboard 2.2.0 "cordova-plugin-ionic-keyboard"
  • cordova-plugin-ionic-webview 4.1.2 "cordova-plugin-ionic-webview"
  • cordova-plugin-network-information 2.0.2 "Network Information"
  • cordova-plugin-splashscreen 5.0.3 "Splashscreen"
  • cordova-plugin-statusbar 2.4.3 "StatusBar"
  • cordova-plugin-whitelist 1.3.4 "Whitelist"
  • cordova-support-android-plugin 1.0.1 "cordova-support-android-plugin"
  • cordova-support-google-services 1.3.2 "cordova-support-google-services"
  • cordova.plugins.diagnostic 5.0.1 "Diagnostic"
  • onesignal-cordova-plugin 2.7.0 "OneSignal Push Notifications"
1
It because of the recent update Google Firebase Update - June 17, 2019 firebase.google.com/support/release-notes/android#version_1621Sachin Yadav
The android build is working fine. The issue is only with iOSKuldeep Dubey
No it's clearly stated in your error Failed to install 'cordova-plugin-firebase-authentication': undefined CordovaErrorSachin Yadav
Installing "cordova-plugin-firebase-authentication" for ios as mentioned in the error. Is there any fixes for this. Am I suppose to change the versionKuldeep Dubey

1 Answers

0
votes

So, after doing couple of changes I found the issue was due to the npm package. We were getting this error on NodeJs 10.17.0. So, we downgraded NodeJs to 10.14.2

Seems like the firebase authentication plugin might have conflict with NodeJs 10.17.0

So, the final configuaration which worked was

cordova-plugin-firebase-authentication 3.0.0
NodeJs 10.14.2
npm 6.4.1
cordova cli 9.0.0