bsddb3-6.0.1 Ошибка Windows7: _bsddb.obj: ошибка LNK2019: неразрешенный внешний символ db_create, на который ссылается функция newDBObject

Сборка bsddb3-6.0.1, Python 3.3.2, BerkeleyDB 5.3, Windows7. Первый компоновщик запросил libdb53s.lib, но такого файла нет, поэтому я удалил символ 's' (в setup3.py), и теперь компоновщик может найти libdb53.lib, но...

_bsddb.obj: ошибка LNK2019: неразрешенный внешний символ db_create, на который ссылается функция f newDBObject _bsddb.obj: ошибка LNK2019: неразрешенный внешний символ db_strerror, на который ссылается функция ошибка LNK2019: неразрешенный внешний символ db_version, на который ссылается функция _promote_transaction_dbs_and_sequence _bsddb.obj: ошибка LNK2019: неразрешенный внешний символ db_full_version ссылка d в ​​функции _promote_transaction_dbs_and_sequence _bsddb.obj: обозначение_библиотеки_без_дребованной_диски -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. Есть ли готовые к использованию двоичные файлы bsddb3 для Python3.3.2?

1 ответ

Удаление символа 's' не подходит - s обозначает статическую библиотеку libdb53. Предполагая, что вы также собираете libdb53 из исходного кода, в каталоге build_windows есть Berkeley_DB.sln, который включает в себя конфигурации Static_Debug и Static_Release, которые будут их создавать.

Тем не менее, ваши проблемы не могут закончиться там. Я использую статические библиотеки и все еще получаю похожие неразрешенные внешние ошибки.

Другие вопросы по тегам