sudo easy_install bsddb3 错误:找不到本地的 Berkeley DB 安装

5 投票
1 回答
8648 浏览
提问于 2025-04-17 17:49

我尝试在qgis上用Python 2.7.3制作一个插件。

但是出现了一个错误。

images

我发现可以安装bsddb3来替代bsddb。

但是当我尝试时,

$sudo easy_install bsddb3

却给我报了一个错误。

Can't find a local Berkeley DB installation

我找到了一种方法,安装Homebrew和GCC可以解决这个问题。

但是在我安装之后,错误还是出现了。

我该怎么解决这个问题呢?

这是我按照以下步骤进行的:

破解OS X的Python dbhash和bsddb模块以使其正常工作

2

enter image description here

1 个回答

10

这是我在Mac上让bsddb3正常工作的步骤。

首先,从https://pypi.python.org/pypi/bsddb3/5.3.0下载Python模块的源代码(我用的是.tar.gz版本)。

接下来,确保你的电脑上安装了BerkeleyDB。我使用的是MacPorts,并安装了db48这个包。这样会把包含文件放在/opt/local/include/db48,而库文件则放在/opt/local/lib/db48。如果你用的是HomeBrew,路径可能会有所不同。

解压bsddb3并使用正确的路径进行安装:

python setup.py --berkeley-db-incdir=/opt/local/include/db48 --berkeley-db-libdir=/opt/local/lib/db48 install

之后,我就得到了一个可以用的bsddb3包。不过你还需要对一些模块进行修改,把它们尝试包含的bsddb替换成bsddb3

撰写回答