导入的库与build不兼容

时间:2012-02-02 19:48:52

标签: 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 
input file libdb_cxx-5.3.a is not a fat file
Non-fat file: libdb_cxx-5.3.a is architecture: i386

它似乎是正确的架构。

在这里调试出错的合理方法是什么?

2 个答案:

答案 0 :(得分:1)

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

答案 1 :(得分:0)

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