iPhone上的SQLite,奇怪的链接错误
Posted
技术标签:
【中文标题】iPhone上的SQLite,奇怪的链接错误【英文标题】:SQLite on the iPhone, strange linking errors 【发布时间】:2010-05-28 10:46:06 【问题描述】:我一直在阅读this tutorial 在 iPhone 应用程序中使用 SQLite 数据库。这很棒,我在模拟器中一切正常。一旦我构建到设备,我就会收到以下链接器错误:
ld:警告:在 /Developer/SDKs/MacOSX10.6.sdk/usr/lib/libgcc_s.1.dylib, 缺少所需的架构臂 文件 ld:警告:在 /Developer/SDKs/MacOSX10.6.sdk/usr/lib/libSystem.dylib, 缺少所需的架构臂 文件 ld:在 /Developer/SDKs/MacOSX10.6.sdk/usr/lib/libobjc.A.dylib, 缺少所需的架构臂 文件 collect2: ld 返回 1 退出 状态命令 /Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc-4.2 退出代码 1 失败
我已尝试包含本网站和其他留言板中提到的不同版本的 libsqlite3.0.dylib 文件,但没有任何不同(是的,我已尝试清理)。
如果有人遇到过类似的问题,你如何解决这个问题?
【问题讨论】:
【参考方案1】:看起来您正在链接“当前操作系统”作为 SDK。您应该在构建设置中选择一个 iPhone SDK。
编辑: 或者,您选择了与当前 SDK 不同的库。
【讨论】:
【参考方案2】:对此的解决方案非常奇怪,我不完全确定删除它做了什么......但是,这就是我所做的......
在目标构建设置下,我注意到在“搜索路径”部分中,在“库搜索路径”下设置了以下内容:
"$(inherited)"
"$(DEVELOPER_DIR)/SDKs/MacOSX10.6.sdk/usr/lib"
"$(DEVELOPER_DIR)/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS3.1.3.sdk/usr/lib"
"$(SRCROOT)"
我用我在 iPhoneOS 3.1.3 发布之前创建的应用程序检查了这个,它是空白的。通过删除上述内容,我的应用程序立即构建和编译...
很奇怪。感谢 Claus Broch 让我完成了 50% 的目标!
【讨论】:
以上是关于iPhone上的SQLite,奇怪的链接错误的主要内容,如果未能解决你的问题,请参考以下文章
iPhone上的Facebook登录导致“lang:错误:链接器命令失败”