Mac OS X 10.5 LeopardのデフォルトのPythonパッケージで壊れたBSDDBインストールを修正する方法

StackOverflow https://stackoverflow.com/questions/814041

質問

Mac OS X 10.5(Leopard)w / Developer ToolsのデフォルトのPythonインストールで以下を実行します。

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

いいですか? TMNCの提案またはMacPortsなどの使用

編集

MacPorts経由でPython2.4とBSDDBをインストールすることで問題を回避しました。

私の質問はまだ残っています。デフォルトのインストールが壊れているのはなぜですか、それを修正することは可能ですか。

他のヒント

この痛みはOSX 10.8でも続きます。 macports py-bsddb3を使用してbsddb3をvirtualenvにインストールできませんでした。非常にシンプルで機能したのは、次のとおりです。

  • macportsからdb53をインストールします
  • bsddb3ソースをダウンロードして解凍します( https://pypi.python.org/pypi/ bsddb3 / 6.1.0
  • sudo python setup.py&#8211; berkeley-db-incdir = / opt / local / include / db53&#8211; berkeley-db-libdir = / opt / local / lib / db53 install

パッチは私にとっては機能せず、bsddbフォルダーを   /System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7

でbsddb3を使用:

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

念のためbsddbフォルダーをバックアップしてください。

私が見つけた解決策は、ActivePythonをインストールし、そのライブラリ(/Library/Frameworks/Python.framework/Versions/....your version here .... / libにある)を調べて、< strong> _bsddb.so ファイルをOS X 10.6ネイティブpython 2.6インストールディレクトリ(/System/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/)に保存します。

これにより、欠落している_bsddbの問題が修正され、ネイティブPythonインストールでbsddbの作業バージョンが残されました。次に、ActivePythonをアンインストールしました(手順はこちら

エラーは、「_ bsddbという名前のモジュールがありません」でした。 bsddbをアップグレードする必要がなかったことがわかりました。 Windowsで作成された.pklファイルを使用していました。 pklファイルの名前を変更してMac OSX Pythonが新しい.pkl.dbファイルを再作成し、今では完全に機能するようになりました。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top