Как исправить поврежденную установку BSDDB в пакете Python по умолчанию на Mac OS X 10.5 Leopard - PullRequest
4 голосов
/ 02 мая 2009

Выполните следующие действия при установке Python по умолчанию в Mac OS X 10.5 (Leopard) с инструментами разработчика:

noel ~ : python

Python 2.5.1 (r251:54863, Jan 13 2009, 10:26:13) 
[GCC 4.0.1 (Apple Inc. build 5465)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import bsddb
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/System/Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5/bsddb/__init__.py", line 51, in <module>
import _bsddb
ImportError: No module named _bsddb

хорошо, а? Как я могу это исправить, не отказываясь и не устанавливая, не настраивая и не поддерживая свой собственный пакет Python в соответствии с предложением TMNC или использованием MacPorts и т. Д.

Редактировать

Я обошел проблему, установив Python2.4 и BSDDB через MacPorts.

Мой вопрос остается в силе: почему установка по умолчанию не работает и можно ли это исправить.

Ответы [ 5 ]

6 голосов
/ 02 мая 2009
2 голосов
/ 17 августа 2014

Эта боль сохраняется на OSX 10.8. Я не смог установить bsddb3 с помощью macports py-bsddb3 в virtualenv. То, что было очень просто и сделало работу:

  • установить db53 из macports
  • скачать и распаковать исходный код bsddb3 (https://pypi.python.org/pypi/bsddb3/6.1.0)
  • sudo python setup.py –berkeley-db-incdir = / opt / local / include / db53 –berkeley-db-libdir = / opt / local / lib / db53 install
1 голос
/ 23 июня 2014

Патч у меня не сработал и мне пришлось заменить папку bsddb в /System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7

с bsddb3 в:

/ USR / местные / Библиотека / python2.7 / сайт-пакеты / bsddb3

Убедитесь, что вы сделали резервную копию папки bsddb на всякий случай.

0 голосов
/ 12 июня 2013

У меня была ошибка "Нет модуля с именем _bsddb". Оказывается, мне не нужно было обновлять мой bsddb. Я использовал файл .pkl, созданный в Windows. После переименования файла pkl, чтобы получить его, как Mac OSX Python воссоздает новый файл .pkl.db, и теперь он работает отлично.

0 голосов
/ 16 апреля 2011

Решение, которое я нашел, состояло в том, чтобы установить ActivePython, покопаться в его библиотеке (находится в /Library/Frameworks/Python.framework/Versions/....your version здесь .... / lib) и скопировать и вставить * Файл 1001 * _bsddb.so в мой установочный каталог Python 2.6 для OS X 10.6 (/System/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/).

Это исправило отсутствующую проблему _bsddb, оставив мне рабочую версию bsddb в моей родной установке python. Затем я просто удалил ActivePython ( инструкции здесь )

...