bsddb3-6.0.1 Windows7 bulid错误:_bsddb.obj:错误LNK2019:函数newDBObject中引用的未解析的外部符号db_create

时间:2014-03-13 09:18:37

标签: python windows berkeley-db bsddb

构建bsddb3-6.0.1,Python 3.3.2,BerkeleyDB 5.3,Windows7。 第一个链接器要求libdb53s.lib,但是没有这样的文件,所以我删除了's'符号(在setup3.py中),现在链接器可以找到libdb53.lib,但是......

_bsddb.obj:错误LNK2019:f中引用的未解析的外部符号db_create unction newDBObject _bsddb.obj:错误LNK2019:未解析的外部符号db_strerror在中引用  function makeDBError _bsddb.obj:错误LNK2019:引用了未解析的外部符号db_env_create 在函数newDBEnvObject中 _bsddb.obj:错误LNK2019:未解析的外部符号db_version在中引用 function _promote_transaction_dbs_and_sequences _bsddb.obj:错误LNK2019:未解析的外部符号db_full_version引用 d在函数_promote_transaction_dbs_and_sequences中 _bsddb.obj:错误LNK2019:未解析的外部符号db_sequence_create refere 在函数newDBSequenceObject中 build \ lib.win-amd64-3.3 \ bsddb3_pybsddb.pyd:致命错误LNK1120:6未解决 的外部 错误:命令'“C:\ Program Files(x86)\ Microsoft Visual Studio 11.0 \ VC \ BIN \ amd6 4 \ link.exe“'以退出状态1120失败

将BDB文件夹复制到bsddb3-6.0.1 \ db bsddb3-6.0.1 \ db \ lib包含libdb53.lib bsddb3-6.0.1 \ db \ bin包含libdb53.dll 有没有为Python3.3.2准备好使用bsddb3二进制文件?

1 个答案:

答案 0 :(得分:0)

删除's'符号是不合适的 - s指定静态libdb53库。假设您也从源代码构建libdb53,在build_windows目录中有一个Berkeley_DB.sln,它包含将构建这些的Static_Debug和Static_Release配置。

但是,你的麻烦可能不会就此结束。我正在使用静态库,但仍然遇到类似的未解决的外部错误。