使用 pip 在 Heroku 中编译本地 C 扩展

问题描述

我正在 Heroku 中创建一个 Python 应用程序,我想安装一个使用 C 扩展的包。如果我只是在 requirements.txt 中包含该包并运行该应用程序,则会出现以下错误

The compiled C library is not available

从该包的文档中,它指出:

根据您的系统,这可能不会安装 C 版本。到 保证安装 C 扩展遵循“源代码”部分中的说明 下面。

所以我想我需要从源代码在 Heroku 中安装它。在该部分中,它指出我应该下载源代码然后运行:

python3 setup.py build_ext --inplace
python3 setup.py install
python3 setup.py --noopenmp build_ext --inplace

我在我的应用程序目录中下载了包,但我不确定如何在 requirements.txt 中运行以下命令以正确安装依赖项。

我尝试在 requirements.txt 中添加以下几行,但构建时间太长,最终失败:

./packages/package --global-option=build_ext --install-option="--inplace"
./packages/package
./packages/package --global-option=build_ext --install-option="--noopenmp" --install-option="--inplace"

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...