为啥我在尝试运行我的 iOS 应用程序时收到错误“找不到 FirebaseCore/FirebaseCore.h”文件
Posted
技术标签:
【中文标题】为啥我在尝试运行我的 iOS 应用程序时收到错误“找不到 FirebaseCore/FirebaseCore.h”文件【英文标题】:Why am I getting the error ''FirebaseCore/FirebaseCore.h' file not found' when trying to run my iOS app为什么我在尝试运行我的 iOS 应用程序时收到错误“找不到 FirebaseCore/FirebaseCore.h”文件 【发布时间】:2021-06-22 14:34:48 【问题描述】:我最近开始使用带有 M1 芯片的 MacBook Pro,而旧款 MacBook Pro 的 M1 芯片在运行这个应用程序时没有问题。现在,当我尝试构建和运行我的应用程序时,我遇到了以下问题:
'FirebaseCore/FirebaseCore.h' file not found
和
Could not build Objective-C module 'Firebase'
我尝试过的:
清理我的构建文件夹 删除派生数据 重新启动我的电脑 正在运行pod install --repo-update
当我将 Scheme 更改为 FirebaseCore 时,该错误确实消失了,但是我无法在模拟器上运行该应用程序。
这是我的 pod 文件:
# Uncomment the next line to define a global platform for your project
platform :ios, '14.0'
post_install do |pi|
pi.pods_project.targets.each do |t|
t.build_configurations.each do |config|
config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] = '14.0'
end
end
end
target 'Pikit' do
# Comment the next line if you don't want to use dynamic frameworks
use_frameworks!
# Pods for Firebase
pod 'Firebase'
pod 'Firebase/Storage'
pod 'Firebase/Auth'
pod 'Firebase/Firestore'
pod 'Firebase/Functions'
pod 'Firebase/Analytics'
pod 'Firebase/Messaging'
pod 'Firebase/DynamicLinks'
pod 'FirebaseUI/Auth'
pod 'FirebaseUI/Email'
pod 'FirebaseUI/Google'
pod 'FirebaseUI/Facebook'
pod 'FirebaseUI/OAuth' # Used for Sign in with Apple, Twitter, etc
pod 'FirebaseUI/Phone'
# Other Podfiles
pod 'OnboardKit'
pod 'SDWebImage'
pod 'PureLayout'
pod 'IQKeyboardManagerSwift'
pod 'Google-Mobile-Ads-SDK'
end
【问题讨论】:
***.com/questions/52077002/… 的重复? 链接的问题涉及新创建的 pod 文件,我相信我的问题源于新的 Apple M1 芯片。我已经能够在其他操作系统上运行这个项目而没有问题。这个问题的选定答案也是从 xcode 8 更新到 xcode 9,而我正在使用 xcode 12 @PaulBeusterien 为什么不直接查明您的项目是否包含名为 FirebaseCore.h 的文件? 如果你使用 Rosetta 运行 Xcode 会发生什么? (在 Finder 中找到 Xcode.app 转到 Get Info 并选择Open using Rosetta
)。在尝试运行/构建之前,您需要执行Clean Build Folder
。我创建了一个具有相同 podfile 的项目,并且在没有 Rosetta 的情况下使用 Xcode 时它不会运行(但与您的帖子的错误不同),但因为 GoogleSignIn SDK doesn't support M1 yet 和 FirebaseUI/Google
pod 依赖于此。
告诉我们安装了哪个版本的可可豆荚(pod --version)以及您拥有的 Firebase 版本会对我们有所帮助。解散 pod,然后重新执行此操作可能会有所帮助,但让我们先看看版本。
【参考方案1】:
如果有人仍然面临问题, 如果您已经清理了构建文件夹,请删除派生数据,删除 pod.lock 和 pods 文件夹,我建议您打开终端并
插入: pod deintegrate && pod install
差异是由 deintegrate 调用引起的,它将删除构建阶段以及框架文件夹。
还要考虑: 使用 M1 芯片 MacBook,在为模拟器而不是真实设备/macbook 构建项目时,我也遇到了上述错误
【讨论】:
【参考方案2】:“仅构建活动架构”在其中发挥了作用。尝试更改此设置,看看是否有帮助。
【讨论】:
【参考方案3】:使用 pod update 来更新 Pod 使用 Cmd+sht+k 清理项目并开始构建
【讨论】:
正如我的问题中所述,我已经尝试过了 尝试卸载并重新安装应用程序 我们尝试安装指定版本号的pod【参考方案4】:在 podfile 的末尾添加了这个。
post_install do |installer|
installer.pods_project.build_configurations.each do |config|
config.build_settings["EXCLUDED_ARCHS[sdk=iphonesimulator*]"] = "arm64"
end
end
【讨论】:
【参考方案5】:在我的情况下,我正在运行 .xcodeproj
文件,因此我的 Pod 没有同时运行。使用 .xcworkspace
文件加载项目和 Pod。
作为旁注,如果上述方法不起作用并且您是使用 Cordova 和 FirebaseX 的人,那么我用来解决问题的版本是 FirebaseX 8.0.1 和 Cordova IOS 5.0.1*支持>
*(暂时很快就会弃用)
【讨论】:
以上是关于为啥我在尝试运行我的 iOS 应用程序时收到错误“找不到 FirebaseCore/FirebaseCore.h”文件的主要内容,如果未能解决你的问题,请参考以下文章
为啥我在运行动态 Web 项目时收到 HTTP 404 错误? [复制]
为啥我在启动我的 iPhone OS 应用程序时会收到“安全策略错误”?
为啥我在运行查询时收到错误 -4700(尝试使用新功能模式)?
为啥我在尝试在 iOS Swift 中向服务器发出 post 请求时收到此错误:在展开 Optional 值时意外发现 nil?