Exception 导入的库与生成不兼容

Exception 导入的库与生成不兼容,exception,ios5,ios-simulator,xcode4.2,berkeley-db,Exception,Ios5,Ios Simulator,Xcode4.2,Berkeley Db,我已经编译了Berkeley DB库,并将其包含在Xcode 4.2的iOS项目中。该项目编译得很好,但运行时出现以下错误: BDB1539生成签名与环境不匹配 这里有很多例外,没有有用的信息 终止引发异常的调用(gdb) 该项目是Xcode附带的模板之一。我唯一更改的是添加了berkeley库的头,链接了库本身,并在模型控制器的init中创建了一个DB实例 我在库上运行lipo以确保它是正确的体系结构,并得到以下结果: >lipo -info libdb_cxx-5.3.a

我已经编译了Berkeley DB库,并将其包含在Xcode 4.2的iOS项目中。该项目编译得很好,但运行时出现以下错误:

BDB1539生成签名与环境不匹配

这里有很多例外,没有有用的信息

终止引发异常的调用(gdb)

该项目是Xcode附带的模板之一。我唯一更改的是添加了berkeley库的头,链接了库本身,并在模型控制器的init中创建了一个DB实例

我在库上运行lipo以确保它是正确的体系结构,并得到以下结果:

>lipo -info libdb_cxx-5.3.a 
input file libdb_cxx-5.3.a is not a fat file
Non-fat file: libdb_cxx-5.3.a is architecture: i386
它似乎是正确的体系结构


调试出现问题的合理方法是什么?

事实证明,“构建签名与环境不匹配”是一个Berkeley DB异常,我在传递unix路径而不是iOS路径作为环境的DB位置时触发了该异常。

实际上,我也有这个问题,发生这种情况是因为我用调试库创建了数据库,并试图稍后使用release打开它。让人们意识到的东西…

将您的更改放回原处,看看没有这些更改是否有效。你试过了吗?我解决了。我犯了愚蠢的错误。