Pergunta

Faça o seguinte sobre o padrão Python instalado no Mac OS X 10.5 (Leopard) w / Desenvolvedor Ferramentas:

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

bom, hein? Como faço para corrigir isso sem abrir mão e instalação / configuração / manutenção meu próprio pacote Python como por sugestão de TMNC ou usando MacPorts etc?

Editar

Eu tenho ido ao redor do problema instalando python2.4 e bsddb via MacPorts.

A minha pergunta ainda permanece:. Porque é que a instalação padrão quebrado e é possível corrigi-lo

Outras dicas

Esta dor persistir no OSX 10.8. Eu não poderia instalar bsddb3 usando MacPorts PY-bsddb3 em um virtualenv. O que era muito simples e fizeram a obra é:

  • instalar db53 a partir MacPorts
  • faça o download e fonte bsddb3 descompactar ( 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 instalar

O patch não funcionou para mim e eu tive que substituir a pasta bsddb em /System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7

com o bsddb3 em:

/usr/local/lib/python2.7/site-packages/bsddb3

Certifique-se de fazer o backup da pasta bsddb apenas no caso.

A solução que encontrei foi a instalação de ActivePython, cavar em sua biblioteca (localizado na versão /Library/Frameworks/Python.framework/Versions/....your aqui .... / lib) e copie e cole o < strong> _bsddb.so arquivo no meu OS X 10.6 python nativa 2,6 diretório de instalação (/System/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6 /).

Isso corrigiu o problema _bsddb faltando deixando-me com uma versão de trabalho do bsddb na minha python nativa instalar. Então, eu só desinstalado ActivePython ( instruções aqui )

O erro que eu tinha era "No módulo chamado _bsddb". Ele vir que eu não preciso atualizar o meu bsddb. I wasusing o arquivo .pkl criado em janelas. Depois de renomear o arquivo PKL para tirá-lo do jeito Mac OSX Python recriado um novo arquivo .pkl.db e agora ele funciona perfeitamente.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top