【问题标题】:dyld not loaded problem xcode 4dyld未加载问题xcode 4
【发布时间】:2011-09-23 01:09:32
【问题描述】:

我将 skype fromwork 拖到了我的 frameworks 文件夹中,然后导入了 <Skype/Skype.h>。当我运行时,它给了我这个错误:

dyld: Library not loaded: @executable_path/../Frameworks/Skype.framework/Versions/A/Skype
  Referenced from: /Users/test/Library/Developer/Xcode/DerivedData/TEST-edktdfqvxhqmfpfqrdqrmjojnfly/Build/Products/Debug/TEST.app/Contents/MacOS/TEST
  Reason: image not found

【问题讨论】:

  • Skype 框架是否真的位于该路径?

标签: objective-c ios macos cocoa xcode4


【解决方案1】:

尝试为您的项目设置“库搜索路径”构建设置。

在 Xcode 4.x 中:

您需要将 .framework 从 Project navigator 拖到 Copy Files 构建阶段。

在 Xcode 3.2.x 中:

  1. 选择项目 > 新构建阶段 > 新复制文件构建阶段

  2. 在目标下拉框中选择框架

  3. 关闭 Copy Files Phase Info 窗口以返回 Xcode 主窗口

  4. 在 Groups & Files 窗格中展开 Targets > YourApplicationExectuable,您现在应该会在其中看到 Copy Files 条目

  5. Still in Groups & Files 窗格将您的框架拖到 Copy Files 条目中

  6. 重新编译

如果您不这样做,该框架将不会实际复制到您的应用程序包中,因此当您的应用程序尝试将其加载到内存中时将找不到它。

【讨论】:

    【解决方案2】:

    顺便说一句,我花了几个月的时间试图找到这个问题的答案,总是看到这个答案,但永远无法让它发挥作用。

    我的错误: 默认情况下不显示“复制文件”构建阶段。我看到了“复制捆绑资源”阶段,并错误地认为这是我需要列出框架的地方。

    在“构建阶段”窗格的底部,单击“添加构建阶段”。那里列出了“复制文件”。

    【讨论】:

      【解决方案3】:

      对我不起作用。我必须在 ~/Library/Developer/../Debug/../Frameworks 中创建一个到框架的链接才能工作。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2018-11-07
        • 1970-01-01
        相关资源
        最近更新 更多