cordova-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Shazron Abdullah (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (CB-12582) Plugin's Cocoapods don't persist if another plugin is added after it
Date Thu, 23 Mar 2017 00:11:41 GMT

    [ https://issues.apache.org/jira/browse/CB-12582?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15937433#comment-15937433
] 

Shazron Abdullah commented on CB-12582:
---------------------------------------

Ok here are my results.

{code}
$ cordova create test1
Creating a new cordova project.
$ cd test1
## edit config.xml, remove all plugin tags
## edit the config.xml, add the plugin tags you provided, in order
$ cordova platform add https://github.com/apache/cordova-ios.git
git cloning: https://github.com/apache/cordova-ios.git
Repository "https://github.com/apache/cordova-ios.git" checked out to git ref "master".
Warning: using prerelease platform ios@4.4.0-dev.
Use 'cordova platform add ios@latest' to add the latest published version instead.
Adding ios project...
Creating Cordova project for the iOS platform:
	Path: platforms/ios
	Package: io.cordova.hellocordova
	Name: HelloCordova
iOS project created with cordova-ios@4.4.0-dev
Discovered plugin "urbanairship-cordova" in config.xml. Adding it to the project
Fetching plugin "urbanairship-cordova@~6.6.0" via npm
Installing "urbanairship-cordova" for ios
Discovered plugin "cordova-plugin-file" in config.xml. Adding it to the project
Fetching plugin "cordova-plugin-file@^3.0.0" via npm
Installing "cordova-plugin-file" for ios

The Android Persistent storage location now defaults to "Internal". Please check this plugins
README to see if you application needs any changes in its config.xml.

If this is a new application no changes are required.

If this is an update to an existing application that did not specify an "AndroidPersistentFileLocation"
you may need to add:

      "<preference name="AndroidPersistentFileLocation" value="Compatibility" />"

to config.xml in order for the application to find previously stored files.


Discovered plugin "cordova-plugin-file-transfer" in config.xml. Adding it to the project
Fetching plugin "cordova-plugin-file-transfer@^1.2.1" via npm
Installing "cordova-plugin-file-transfer" for ios
Dependent plugin "cordova-plugin-file" already installed on ios.
Discovered plugin "cordova-plugin-whitelist" in config.xml. Adding it to the project
Fetching plugin "cordova-plugin-whitelist@~1.2.2" via npm
Installing "cordova-plugin-whitelist" for ios
Discovered plugin "cordova-plugin-crosswalk-webview" in config.xml. Adding it to the project
Fetching plugin "cordova-plugin-crosswalk-webview@~2.3.0" via npm
Installing "cordova-plugin-crosswalk-webview" for ios

        After much discussion and analysis of the market, we have decided to discontinue support
for Android 4.0 (ICS) in Crosswalk starting with version 20.

        So the minSdkVersion of Cordova project is configured to 16 by default.

Discovered plugin "cordova-plugin-device" in config.xml. Adding it to the project
Fetching plugin "cordova-plugin-device@~1.0.1" via npm
Installing "cordova-plugin-device" for ios
Discovered plugin "cordova-plugin-dialogs" in config.xml. Adding it to the project
Fetching plugin "cordova-plugin-dialogs@~1.1.1" via npm
Installing "cordova-plugin-dialogs" for ios
Discovered plugin "cordova-plugin-zip" in config.xml. Adding it to the project
Fetching plugin "cordova-plugin-zip@~3.0.0" via npm
Installing "cordova-plugin-zip" for ios
Dependent plugin "cordova-plugin-file" already installed on ios.
Discovered plugin "cordova-plugin-inappbrowser" in config.xml. Adding it to the project
Fetching plugin "cordova-plugin-inappbrowser@~1.3.0" via npm
Installing "cordova-plugin-inappbrowser" for ios
Discovered plugin "cordova-custom-config" in config.xml. Adding it to the project
Fetching plugin "cordova-custom-config@~2.0.3" via npm
Installing "cordova-custom-config" for ios
cordova-custom-config: Installing plugin dependencies...
Discovered plugin "cordova-plugin-statusbar" in config.xml. Adding it to the project
Fetching plugin "cordova-plugin-statusbar@~2.1.3" via npm
Installing "cordova-plugin-statusbar" for ios
Discovered plugin "cordova-plugin-google-analytics" in config.xml. Adding it to the project
Fetching plugin "cordova-plugin-google-analytics@~0.8.1" via npm
Installing "cordova-plugin-google-analytics" for ios
Discovered plugin "cordova-plugin-geolocation" in config.xml. Adding it to the project
Fetching plugin "cordova-plugin-geolocation@~2.4.0" via npm
Installing "cordova-plugin-geolocation" for ios
Fetching plugin "cordova-plugin-compat" via npm
Installing "cordova-plugin-compat" for ios
{code}

Now we have the right environment. I had to create a Push Notification profile with the right
entitlement and set it manually in Xcode, before it could build. Now I did this:

{code}
$ cordova build
[... trimmed ...]
ld: warning: directory not found for option '-L/Users/shaz/Library/Developer/Xcode/DerivedData/HelloCordova-cqfgyiiqldisiscndvjjnhrdkpqz/Build/Intermediates/ArchiveIntermediates/HelloCordova/BuildProductsPath/Debug-iphoneos/UrbanAirship-iOS-SDK'
ld: library not found for -lUrbanAirship-iOS-SDK
clang: error: linker command failed with exit code 1 (use -v to see invocation)

** ARCHIVE FAILED **


The following build commands failed:
	Ld /Users/shaz/Library/Developer/Xcode/DerivedData/HelloCordova-cqfgyiiqldisiscndvjjnhrdkpqz/Build/Intermediates/ArchiveIntermediates/HelloCordova/IntermediateBuildFilesPath/HelloCordova.build/Debug-iphoneos/HelloCordova.build/Objects-normal/arm64/HelloCordova
normal arm64
	Ld /Users/shaz/Library/Developer/Xcode/DerivedData/HelloCordova-cqfgyiiqldisiscndvjjnhrdkpqz/Build/Intermediates/ArchiveIntermediates/HelloCordova/IntermediateBuildFilesPath/HelloCordova.build/Debug-iphoneos/HelloCordova.build/Objects-normal/armv7/HelloCordova
normal armv7
(2 failures)
Error: Error code 65 for command: xcodebuild with args: -xcconfig,/Users/shaz/Desktop/test1/platforms/ios/cordova/build-debug.xcconfig,-workspace,HelloCordova.xcworkspace,-scheme,HelloCordova,-configuration,Debug,-destination,generic/platform=iOS,-archivePath,HelloCordova.xcarchive,archive,CONFIGURATION_BUILD_DIR=/Users/shaz/Desktop/test1/platforms/ios/build/device,SHARED_PRECOMPS_DIR=/Users/shaz/Desktop/test1/platforms/ios/build/sharedpch
{code}

Linker error. I'll have to investigate more but the CocoaPod for UA was added (I checked out
the workspace), but something else is going on here.

> Plugin's Cocoapods don't persist if another plugin is added after it
> --------------------------------------------------------------------
>
>                 Key: CB-12582
>                 URL: https://issues.apache.org/jira/browse/CB-12582
>             Project: Apache Cordova
>          Issue Type: Bug
>          Components: iOS
>    Affects Versions: cordova-ios@4.3.1, 6.5.0
>            Reporter: Kyle Kirbatski
>            Priority: Blocker
>             Fix For: cordova-ios@4.4.0
>
>
> I was trying to use the urbanairship-cordova plugin but was unable to because the frameworks
added by Cocoapods (referenced from the plugin's xml) were not being found for linking. After
some investigation it appears that if a plugin is added after a plugin that uses cocoapods
then the changes made by cocoapods are removed by cordova.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@cordova.apache.org
For additional commands, e-mail: issues-help@cordova.apache.org


Mime
View raw message