【问题标题】:Bridging Header File can't find an imported Objective-C project桥接头文件找不到导入的 Objective-C 项目
【发布时间】:2016-01-04 17:15:50
【问题描述】:

我正在尝试使用“桥接头文件”方法将this library (SCRecorder) 导入到我的 Swift 项目中。但我真的不能让它工作。当我尝试构建项目时,出现以下错误:

error: 'SCRecorder/SCRecorder.h' file not found 
#import <SCRecorder/SCRecorder.h>

这是我的桥接头文件的内容:

#ifndef Project_Bridging_Header_h
#define Project_Bridging_Header_h

#import <SCRecorder/SCRecorder.h>

#endif

这是我的项目结构:

当然,我已经在构建设置中添加了对桥接头文件的引用。我几乎可以肯定这只是一个路径问题......但是在花了几个小时之后,我真的找不到解决方案。

谢谢。

编辑 :我没有直接导入项目,而是使用 CocoaPods 方法添加了它,我得到了一个新错误:

library not found for -lSCRecorder

【问题讨论】:

  • SCRecorder 项目是否设置为将其头文件导出到该位置?如果没有,则不会找到。
  • @Putz1103 老实说,我真的不知道。我该如何检查?
  • 你的框架(根据你的导入声明)应该命名为SCRecorder.Framework,而不是SCRecorderFramework
  • @l'L'l 那么我应该编辑一些东西吗?
  • 也许尝试重命名目录SCRecorderFramework(假设它是框架)。

标签: ios objective-c swift bridging-header ios-library


【解决方案1】:

好的。我想到了。我只是在安装 pod 后没有使用 *.xcworkspace 项目……用这个文件打开我的项目后,一切正常,正如预期的那样。

感谢您的帮助,尤其是 @kaizoku 建议我使用此文件。

【讨论】:

    【解决方案2】:

    您应该尝试使用“cocoapods”安装库
    手动导入项目时可能出现问题。

    Here 是关于如何在应用程序中安装 Cocospods 和初始化 podfile 的教程。

    然后你可以在 Podfile 中添加pod 'SCRecorder' 并返回终端输入pod install
    这将为 SCRecorder 安装所有依赖库。

    最后,去尝试运行构建。它应该工作。
    为了安全起见,请保留此版本的备份。 祝你好运:)

    【讨论】:

    • 感谢您的建议。我现在已经这样做了,但是我收到了一个新错误:“找不到 -lPods 的库”。
    • 你需要打开你的project.xcworkspace 我希望这就是你在做什么。 xcodeproj 文件会给你错误
    【解决方案3】:

    我对 pod 也有类似的问题。基本上试图运行我的 UI 测试,Xcode 抱怨缺少 pod。解决方案是:

    1. 转到项目文件(主要不是目标)
    2. 点击“信息”标签(最左侧)
    3. 为 UI 测试目标设置正确的 pod 配置(“部署目标”下的“配置”部分)

    工作!

    更多信息:https://github.com/CocoaPods/CocoaPods/issues/2695

    【讨论】:

      猜你喜欢
      • 2016-03-06
      • 2015-02-14
      • 1970-01-01
      • 1970-01-01
      • 2016-10-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多