如何修复 Xcode 中的“_sqlite3_prepare_v3”链接器错误

Posted

技术标签:

【中文标题】如何修复 Xcode 中的“_sqlite3_prepare_v3”链接器错误【英文标题】:How to fix '_sqlite3_prepare_v3' linker error in Xcode 【发布时间】:2019-06-21 12:55:00 【问题描述】:

我有一个 ios 项目,我想在其中使用 Firebase Firestore。 我已经用 CocoaPods 安装了 Firebase/Core、Firebase/Firestore 和 Firebase/Auth。 “pod install”运行没有错误,我也成功地在其控制台中将我的项目添加到 Firebase。

我的问题是,当我尝试构建项目时,我收到一个错误,上面写着: 架构 x86_64 的未定义符号:“_sqlite3_prepare_v3”,引用自:...(具体错误请参见下图)

https://i.imgur.com/b0xJiIt.png

我认为这个错误与 Firebase 相关的原因是它说它是从随 Firebase 一起安装的 GoogleAppMeasurement 引用的。

奇怪的是,我已经在这个项目上工作了几天,而我做的第一件事就是向它添加 Firebase。到目前为止,我没有收到与 Firebase 相关的错误。昨天晚上我完全没有错误地离开项目,然后当我今天早上尝试构建它时,没有做任何事情,发生了这个错误。我没有更新 pod,没有编写任何代码。除了尝试构建它之外,我实际上什么也没做。

(环境:High Sierra 10.13、Xcode 9.2、Swift 4.0、iOS 11.2)

我几乎已经完成了我在互联网上可以找到的所有内容,甚至与我的问题远程相关,因为到目前为止我还没有找到任何特定于我的问题的内容。

我已经更新了 pod - 没有用。 我已经在“链接框架和库”中包含了与 sqlite3 有任何关系的每个框架 - 没有工作(如预期的那样)

我已经多次清理了项目。

我已经从我的项目中彻底清除了 Firebase(以及所有其他 pod)。之后,Xcode 成功构建了项目。然后我再次添加了 Firebase,出现了同样的错误。

现在我不知道我能做什么。

我对 Xcode 和 Swift,甚至是 MacOS 完全陌生,所以如果我没有提供足够的背景知识,我很抱歉。如果需要更多信息,请告诉我,我会提供。

(编辑:未显示图像)

【问题讨论】:

你能出示你的代码吗! 错误信息和代码sn-ps应该直接放在问题中,不要链接或放在图片中。见meta.***.com/questions/285551/…。 我应该显示哪个代码?除了 AppDelegate.swift 中的“导入 Firebase 和 FirebaseApp.configure()”之外,我没有做任何 Firebase 特定的操作,即使我将这些行注释掉,错误仍然存​​在。所以我不认为这个问题是代码造成的。 【参考方案1】:

至少使用 Xcode 10.1。

自 2019 年 3 月 App Store 提交开始需要 Xcode 10.1 以来,此后发布的 Firebase 版本也至少需要 Xcode 10.1。

如果您必须使用 Xcode 9,则应坚持使用旧版本的 Firebase pod。

【讨论】:

是的,除了降级或不使用 Firebase 之外,我似乎别无选择。感谢您的答复。我使用的是 Firebase 5.6.0,它看起来可以正常工作。 @Paul 我可以在 XCode 9.1 中使用什么版本的 Firebase 数据库和 Firebase 身份验证。 ?

以上是关于如何修复 Xcode 中的“_sqlite3_prepare_v3”链接器错误的主要内容,如果未能解决你的问题,请参考以下文章

如何修复 Xcode 中的这 15 个错误? ...语义问题和初始化没有匹配的构造函数?

如何修复 Xcode 中的“_sqlite3_prepare_v3”链接器错误

如何修复 Xcode 10 中的“XCtests 间歇性无法在模拟器中启动应用程序”

如何修复一些 Xcode 13 错误,例如无法正确跳转到定义?

更新 Xcode 12 后如何修复操作按钮?

修复 Xcode 中的代码缩进