0

我正在使用 Heroku 和 git 为 django 应用程序提供动力。该站点的部分功能允许用户上传 .mdbs(Microsoft Access 数据库),然后我们使用调用 mdbtools (http://mdbtools.sourceforge.net/) 的 shell 脚本对其进行解析。shell 脚本在本地运行良好,但在 heroku 站点上运行良好。我认为问题在于 mdbtools 不包括在内。我尝试在 requirements.txt 中包含 mdbtools,但没有任何运气。有没有人有任何想法?

我在 requirements.txt 中将 mdbtools 和 mdbtools-dev 分别包含在自己的行中,如下所示:

mdbtools
mdbtools-dev

这是我在 requirements.txt 中包含 mdbtools 和 mdbtools-dev 时遇到的错误

....
Requirement already satisfied (use --upgrade to upgrade): stripe in ./lib/python2.7/site-packages (from -r requirements.txt (line 7))
Downloading/unpacking mdbtools-dev (from -r requirements.txt (line 8))
Could not find any downloads that satisfy the requirement mdbtools-dev (from -r requirements.txt (line 8))
No distributions at all found for mdbtools-dev (from -r requirements.txt (line 8))
Storing complete log in /app/.pip/pip.log
! Heroku push rejected, failed to compile Python app
4

2 回答 2

0

http://pypi.python.org/pypi/mdbtools给出:

Not Found ()

为了pip能够安装需求,它必须能够在 PyPI 上找到它们。看起来您正在使用 PyPI 上不可用的包,因此pip无法找到它来安装它。

于 2012-06-15T01:13:30.500 回答
0

解决方案

经过一番摆弄,我找到的解决方案有点复杂。答案是下载 debian 包,然后复制库文件 (.so) 并将它们加载到您的服务器(或 heroku)。从那里,确保在脚本开始时将这些库的路径添加到 LD 库路径,它应该可以工作

于 2012-08-30T17:39:56.417 回答