错误: 无法建立 Objective-C 模块‘ Firebase’

当我编译应用程序时,我得到一个与下面这个相等的错误:

无法构建 Objective-C 模块‘ Firebase’

此错误迅速出现在我的文件的 import Firebase中。

121197 次浏览

这可能会解决你的问题:

  1. 退出 Xcode (不要只关闭 Xcode 窗口,右键单击并显式退出)。

  2. 转到 ~/Library/Developer/Xcode/DerivedData并删除项目文件夹(只需删除所有文件夹)。

  3. 清理和构建项目。

如果仍然存在错误:

执行步骤1和步骤2,并遵循以下步骤:

  1. 更改方案为 Firebase 和 Build (Command + B)。

  2. 切换回你的应用程序方案,然后再次运行。

我也有同样的问题

您可以在打开 Xcode 的情况下重新安装 pods 否则您的 pods 文件将不允许并覆盖

打开工作区后,删除“ Pods”文件夹。 退出 X 代码 “公共设施”中的开放终端 你可以在“应用程序”里找到这个 使用 cd... 转到您的项目文件夹 使用“ pod install”重新安装吊舱。

应该能修好。

你能看一下 我的答案就在这里

确保您运行的是 cocoapods 版本 1.4.0 minimum。它修复了静态框架导入。

您可以通过在终端上运行 sudo gem install cocoapods来实现这一点,并通过键入 pod --version来验证您的版本

解决这个问题只有一个办法。

  1. 退出 Xcode。
  2. 删除位于 ~/Library/Developer/Xcode/DerivedData的项目临时文件
  3. 删除 ProjectName.xcworkspace
  4. 删除 Podfile.lock文件和 Pods文件夹
  5. 运行 pod install
  6. 打开新创建的 ProjectName.xcworkspace文件并构建。

我尝试过这样做(退出 Xcode,删除所有临时文件,重新安装 pods,等等) ,但是没有用。工作只是在 pod install之后构建我的项目(command + b)。只要管用就行!

我使用的是 Swift 4和 Xcode 9。我所要做的就是选择 FirebaseCore Scheme。

在 Xcode 上:

Product->Scheme->FirebaseCore.

如果你没有 FirebaseCore,到 Manage Schemes选择它,然后再试一次。

Build ( + B)对我很有用。

我使用的是 Swift 4和 Xcode 9.4,这也帮助我解决了同样的问题。

除了我的目标项目之外,我还选择了 XCode-> Manage Scheme 中的以下框架

在 Xcode 中:

Product-> Scheme-> FirebaseCore
Product -> Scheme -> nanopb
Product -> Scheme -> GoogleToolBoxforMac

通过 可可豆正确安装 FireBase

步骤1-关闭 Xcode

第2步-清除你的派生数据。你可以在这里找到你的派生数据

库/开发者/Xcode/衍生数据

步骤3-打开您的. xcworkspace

步骤4-清理你的项目(Something + Shift + K)

步骤5-构建您的项目(Something + B)

确保打开了.xcworkspace 文件

今天发生在我身上的事,我只是不明白为什么,因为那晚我关闭文件时,一切都很完美。我打开我的文件使用最近的项目菜单和得到这个问题。然后我决定检查一些东西,Xcode 打开了错误的文件。它没有使用 pods 打开工作区文件,而是打开了 Xcode 项目。

一旦我打开工作空间,它就没有错误,所有的吊舱都运行正常。我相信你们都比我有经验,但我只是想把这个放在那里。

“分离舱解体”和“分离舱安装”对我很有效。

只要重新启动你的 xcode 并运行你的项目。

这里的一切对我都不起作用,但后来我发现了一些有用的东西。

当我在 Xcode 的 Project Navigator 中点击我的项目,然后选择 信息时,我看了看 配置部分,发现我的应用程序只有一个 放手配置,没有 调试配置。

为了让 Firebase 工作,我在 Project Navigator 中转到了 豆荚,并在 配置部分中删除了 调试配置。现在建造得很好。希望这能帮到别人。

我尝试了以上的建议,但都不起作用。对我有效的方法是首先构建到 Generic iOS Device,然后在我的物理设备 iPhone6上运行它。

然而,我还是不能在模拟器上运行它。在这里起作用的是在 Pod Project Build Settings中将 Build Active Architecture Only - Debug改为 NO

希望这对谁有帮助。

开始这个项目的时候。Xcodeproj 和我用 cocoapods 安装了 Firebase。我也犯了同样的错误。但是我只是关闭了这个项目,然后用。Xcworkspace.

警报消失了。 Firebase 是我项目中的第一个库。所以我继续使用.xcodeproj 文件。

这对我很有效:

  1. 关闭 Xcode
  2. 分离舱解体
  3. 删除 xcworkspace
  4. 吊舱安装
  5. 在“项目导航器”> “项目名称”> “配置”中
  6. 全部设置为零
  7. 干净
  8. 建造

确保 使用的是在 pod 文件所在的同一目录中创建的 工作区文件

经过2天的搜索和尝试每一个步骤提出在这个职位,最终我可以解决这个问题。上述方法都没有解决我的问题,只有一个:

  1. 有一个 Firebase 框架包可以从这个链接下载: Https://firebase.google.com/download/ios?authuser=0
  2. 这个包中有一个 Firebase.h 头文件。
  3. 最后,我在这个文件的顶部添加了一行代码: 导入“ Firebase.h”

很简单,很容易,错误消失了!

为了在 Edit Scheme... > Build下更快地构建过程,我已经禁用了 查找隐式依赖

启用它可以解决这个问题。 enter image description here

它发生在我身上是因为我安装了 Firebase CocoPods,但是我没有通过 <projectName>.xcworkspace文件重新打开它。 所以我的工作就是:

  • 我不玩 Xcode 了
  • 通过单击项目的 <projectName>.xcworkspace文件打开它
  • 然后我就可以在我的项目中使用“导入 Firebase”。

和解决方案非常简单,因为我没有从。在我安装了 pod 之后 xcworkspace: D 和我得到了同样的错误。 我错误地从旧的.xcodeproj 文件中打开了它。 对我来说就是这样 LOL

以上的方法对我都不管用。我发现问题是 Cocoapods 档案里有三个目标。而且只有我的主要目标火力基地增加。因此,当我想导入 Firebase 到一个文件,是用于其他目标,Xcode 给出错误,并说模块’Firebase’未找到。这是我的豆荚项目文件。我的一个解决方案是给所有目标添加 Firebase pod。或者另一种解决方案是从其他目标中删除该文件。

def common_pods
pod 'XXX'
end


target 'myMainProject' do
common_pods()
pod 'Firebase/Core'
pod 'Firebase/AdMob'
pod 'Firebase/RemoteConfig'
pod 'Firebase/Crashlytics'
pod 'Firebase/Analytics'
end


target 'myExtention1' do
common_pods()
end


target 'myextension2' do
common_pods()
end

生成时,请确保位于项目导航器中的根目录。

我最近在使用 Xcode 12时遇到了这个问题。我发现删除 ValidArchitecture 构建设置(VALID _ ARCHS)修复了它。

Xcode 12的发行说明:

“生成设置”编辑器不再包含“有效架构”生成设置(VALID _ ARCHS) ,因此不鼓励使用该设置。取而代之的是一个新的排除体系结构构建设置(EXCLUDED _ ARCHS)。如果项目包含 VALID _ ARCHS,则该设置将显示在“生成设置”编辑器的“用户定义”部分中。(15145028)

当我打开白色工作区而不是蓝色工作区时,它对我起作用了。按下桌面上的文件,然后按下白色文件。

文件外观的图片: Image of what the file looks like

对我来说,问题很简单。我有一台新的 M1 Mac 有时装可可豆会有问题。简单来说:

  • 单击您的豆荚项目(蓝色豆荚)->
  • 点击所有 & build 设置->
  • 被排除的体系结构->
  • 将“ arm64”添加到 debug 和 release->
  • 在左侧设置任何 SDK->
  • 在您的主项目文件夹中也这样做->
  • 建立你的好去

enter image description here

转到 分离舱目标,将 袖标64设置为 排除体系结构

enter image description here

我也遇到过同样的问题。

您应该从项目和每个 pod 目标中排除用于模拟器架构的 arm64

将 arm64排除在项目之外

Excluded Architectures

将此代码添加到 Pofile

post_install do |installer|
installer.pods_project.targets.each do |target|
# exclude arm64 for simulator architecture the pod target
target.build_configurations.each do |config|
config.build_settings["EXCLUDED_ARCHS[sdk=iphonesimulator*]"] = "arm64"
end
end
end

这对我很有效:

  • Rm-rf project. xcworkspace
  • Rm-rf ~/Library/Developer/Xcode/deriedData
  • Rm-rf Podfile. lock
  • 吊舱安装

/! 打开 project.xcworkspace 而不是旧文件

这个办法对我很有效。

  1. 删除位于 库/开发者/Xcode/衍生数据
  2. 删除 ProjectName.xcworkspace
  3. 删除 Podfile.lock 文件和 Pods 文件夹 Run pod install。
  4. 打开新创建的 ProjectName.xcworkspace 文件并构建。