ld:找不到框架:DropboxSDK

时间:2014-01-15 16:48:16

标签: ios xcode flex dropbox-api air-native-extension

我正在编写一个Flex应用程序,它需要使用ios本机扩展来使用dropbox core sdk。我已经下载了框架,并将其添加到我的项目中。项目构建成功,我可以构建一个.ane文件,然后我可以将其添加到我的flex应用程序中。但是,在尝试运行flex项目时,flashbuilder无法运行,抱怨:

"Error occurred during packing the application:
ld: framework not found DropboxSDK
compilation failed while executing : ld64

我已经找到了许多类似标题的帖子,但他们的解决方案都不起作用。 我做过/确保的事情:

  1. DropboxSDK.framework位于我的项目文件夹的根目录中。
  2. DropboxSDK.framework已被拖入xcode的frameworks文件夹中,“将项目复制到目标文件夹”,“为任何添加的文件夹创建组”和“添加到目标”全部选中/勾选。
  3. 在构建阶段,链接二进制文件与库我已QuartzCore.frameworkFoundation.frameworkUIKit.frameworkDropboxSDK.frameworkSecurity.framework
  4. 在Build Settings下,Framework Search Paths设置为我项目的根目录(放置DropboxSDK.framework)。
  5. 我的extension.h和任何引用dropbox功能的文件中都有#import <DropboxSDK/DropboxSDK.h>
  6. 在构建我的xcode项目之后,我将libExtension.a与platformoptions.xml和library.swf一起放在我的flex ios / build文件夹中。
  7. 我的iosplatformoptions.xml如下所示:

    <platform xmlns="http://ns.adobe.com/air/extension/3.7"> 
    <description>ExtensionName</description> 
    <copyright>2013</copyright> 
    <sdkVersion>5.0.0</sdkVersion> 
      <linkerOptions> 
        <option>-ios_version_min 5.0</option> 
        <option>-framework AddressBook</option> <!-- Used elsewhere in ane -->
        <option>-framework DropboxSDK</option>
        <option>-liconv</option> 
      </linkerOptions> 
    </platform>
    
  8. 我尝试在windows和mac上构建ane。
  9. 我确信必须有一个我错过的选项或步骤,但经过几个小时的搜索我找不到它。我正在使用xcode 5.0.2,flashbuilder 4.10 air 3.9。任何帮助表示赞赏!

1 个答案:

答案 0 :(得分:1)

回答我自己的问题,以帮助可能遇到此问题的其他人。

经过大量研究后,我发现需要将adobe flashbuilder链接到ios sdk。

在flashbuilder中右键单击您的项目 - &gt;属性 - &gt; Flex Build Packaging - &gt; Apple iOS - &gt;原生扩展选项卡。 Apple iOS SDK的位置有一个文本字段。我找到了我的sdk:

/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.0.sdk