【发布时间】:2015-11-05 16:18:35
【问题描述】:
有人知道如何在 Heroku 上安装 PyICU 吗?
这是我目前尝试过的:
- 创建了一个 heroku-buildpack-multi 应用程序。
在 .buildpacks 中
https://github.com/ddollar/heroku-buildpack-apt
https://github.com/heroku/heroku-buildpack-python.git
在 Aptfile 中
libicu52
libicu-dev
然后 heroku 运行 bash
CPATH=$CPATH/app/.apt/usr/include/x86_64-linux-gnu
pip install PyICU
而且它安装得很好。
在应用程序的上传阶段(推送),我需要一种方法来做到这一点。
我试过了:
pip install --global-option=build_ext --global-option="-I/app/.apt/usr/lib/x86_64-linux-gnu" PyICU
并在我的主目录中创建一个 .pydistutils.cfg 文件
[build_ext]
include_dirs=/app/.apt/usr/include/x86_64-linux-gnu
在这两种情况下,GCC 都找不到头文件,但我可以看到
-I/app/.apt/usr/lib/x86_64-linux-gnu
在命令行上标记。
二手
`gcc -print-prog-name=cc1plus` -v
查找 CPATH=$CPATH/app/.apt/usr/include/x86_64-linux-gnu 前后搜索路径的差异
之前:
#include <...> search starts here:
/app/.apt/usr/include
.
/usr/include/c++/4.8
/usr/include/x86_64-linux-gnu/c++/4.8
/usr/include/c++/4.8/backward
/usr/lib/gcc/x86_64-linux-gnu/4.8/include
/usr/local/include
/usr/lib/gcc/x86_64-linux-gnu/4.8/include-fixed
/usr/include
End of search list.
之后:
#include <...> search starts here:
/app/.apt/usr/include
/app/.apt/usr/include/x86_64-linux-gnu
/usr/include/c++/4.8
/usr/include/x86_64-linux-gnu/c++/4.8
/usr/include/c++/4.8/backward
/usr/lib/gcc/x86_64-linux-gnu/4.8/include
/usr/local/include
/usr/lib/gcc/x86_64-linux-gnu/4.8/include-fixed
/usr/include
End of search list.
但我不是 C++ 程序员,无法找出问题所在。有什么想法吗?
【问题讨论】: