You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@cordova.apache.org by "Andrew Grieve (JIRA)" <ji...@apache.org> on 2013/07/25 15:55:48 UTC

[jira] [Commented] (CB-4373) iOS .framework files need to be reference-counted

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

Andrew Grieve commented on CB-4373:
-----------------------------------

Ref-counting won't be enough if users add any code in their projects that use frameworks directly. E.g., 

1. They add a framework
2. They remove a plugin that listed the framework
3. The framework is removed and their code is broken.

Instead, maybe we could deal with frameworks in the prepare step? Every time prepare is run, all frameworks are removed and then re-added based on plugins. If the user wants to have custom code, then they should write a plugin for their app that lists the frameworks they use.


Hard to say what's better. Ref-counting can be made to work as well, but will just require the user to re-add their frameworks sometimes (which might be easier than listing them in a plugin.xml file). Just wanted to spell out both options.


                
> iOS .framework files need to be reference-counted
> -------------------------------------------------
>
>                 Key: CB-4373
>                 URL: https://issues.apache.org/jira/browse/CB-4373
>             Project: Apache Cordova
>          Issue Type: Bug
>          Components: iOS, Plugman
>    Affects Versions: 3.0.0
>            Reporter: lmnbeyond
>            Assignee: Shazron Abdullah
>            Priority: Critical
>             Fix For: 3.1.0
>
>
> Steps to reproduce it:
> $ cordova create "HelloCordova"
> $ cd HelloCordova/
> $ cordova platform add ios
> $ cordova plugin add https://git-wip-us.apache.org/repos/asf/cordova-plugin-splashscreen.git
> $ cordova emulate
> $ cordova plugin rm 'org.apache.cordova.core.splashscreen'
> $ cordova emulate
> [Error: An error occurred while emulating/deploying the ios project ....
> Undefined symbols for architecture i386:
>   "_CGRectZero", referenced from:
>       +[CDVUserAgentUtil originalUserAgent] in libCordova.a(CDVUserAgentUtil.o)
> ld: symbol(s) not found for architecture i386
> clang: error: linker command failed with exit code 1 (use -v to see invocation)
> ** BUILD FAILED **
> The following build commands failed:
> 	Ld build/HelloCordova.app/HelloCordova normal i386
> (1 failure)
> ]

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira