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 Tremblay (JIRA)" <ji...@apache.org> on 2013/08/21 00:13:52 UTC

[jira] [Created] (CB-4635) Binary source frameworks import with errors when they start with a lowercase letter

Andrew Tremblay created CB-4635:
-----------------------------------

             Summary: Binary source frameworks import with errors when they start with a lowercase letter 
                 Key: CB-4635
                 URL: https://issues.apache.org/jira/browse/CB-4635
             Project: Apache Cordova
          Issue Type: Bug
          Components: iOS, Plugman
    Affects Versions: 3.0.0
         Environment: Mac OS 10.7.5, Xcode Version 4.6.3 (4H1503), plugman version 0.10.0, phonegap version 3.0.0-0.14.0. 
            Reporter: Andrew Tremblay
            Assignee: Shazron Abdullah
            Priority: Minor


The AppBlade plugin framework uses libAppBladeUniversal.a as a binary file, which can be added to the Libraries of a native iOS target with no problems. From the plugin documentation, following the example, the proper way to declare the plugin in the plugin.xml would be  
 {code:xml} 
    <source-file src="src/ios/libAppBladeUniversal.a" framework="true"/>
 {code} 
However, doing so caused the following linker errors when building in Xcode:

    ld: warning: directory not found for option '-L/Users/andrewtremblay/Development/Local Tests/PhoneGap Plugin Tests/Hello-AppBlade/platforms/ios/Hello-AppBlade/Plugins/com.appblade.cordova.plugin'
    *ld: library not found for -lAppBladeUniversal*

The "lib" was getting dropped somewhere and the framework flag was being pseudo-ignored (it was being added as both a compile source and a linked library in the build target). 

 I reverted the plugin, capitalized the library (both the file and the declaration in the xml), and reran the command. It fixed the error.

 {code:xml} 
<source-file src="src/ios/LibAppBladeUniversal.a" framework="true"/>
 {code} 

I'm fine with that fix for now, but given that it's legal for an iOS developer to name their own binaries in lowercase (and case sensitivity in filesystems is a whole other can of worms), this should probably be considered a bug and investigated further.

 

--
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