Python 3.4 で Windows 7 x64 を実行しています。実行すると、次のようpip install bsddb3
になります。
λ pip install bsddb3
Collecting bsddb3
Using cached bsddb3-6.1.1.tar.gz
Complete output from command python setup.py egg_info:
Traceback (most recent call last):
File "<string>", line 20, in <module>
File "C:\Users\User\AppData\Local\Temp\pip-build-soqf0_qb\bsddb3\setup.py", line 42, in <module>
import setup3
File "C:\Users\User\AppData\Local\Temp\pip-build-soqf0_qb\bsddb3\setup3.py", line 375, in <module>
with open(os.path.join(incdir, 'db.h'), 'r') as f :
FileNotFoundError: [Errno 2] No such file or directory: 'db/include\\db.h'
----------------------------------------
Command "python setup.py egg_info" failed with error code 1 in C:\Users\User\AppData\Local\Temp\pip-build-soqf0_qb\bsddb3
そこで、 bsddb3 のソースをダウンロードしてみました。Oracle の BSD DB Windows バイナリがインストールされていることを確認しました。Berkeley DB 6.1.26.msiからダウンロードしました。include
およびディレクトリを DB インストールから bsddb3 フォルダの /db ディレクトリに移動するとlib
、ライブラリが見つからないという問題が修正されました。しかし、その後、posix セクションにあるが、Windows セクションで適切に宣言されていない欠落変数でセットアップが失敗しました。
それを修正し、他のいくつかの調整を行い、python setup.py build
実際にビルドを実行しましたが、安全でない変換に関する一連の警告の後、エラーで失敗しました:
warning: I don't know what to do with 'runtime_library_dirs': ['db/lib']
error: don't know how to set runtime library search path for MSVC++
次に何をすべきかわかりません。私が最初に使用しようとしていたライブラリを書き直して、代わりに SQLAlchemy を使用するようにする以外は。