我正在尝试在共享的 linux 工作站上启动并运行 google app engine (GAE)。使用管理员提供的标准 python 发行版,几乎一切工作正常,除了 PIL 模块没有使用 zlib 支持编译,这会破坏我的 web 应用程序,所以我决定在我的主目录中进行 Python 的自定义构建,这样我可以控制 Python 和 py 包。Python 编译得很好,PIL 编译得很好,同时支持 jpeg 和 zlib。但是,当我尝试使用我的新 Python 运行 GAE 时,它抱怨 PIL 不可用。
以下是我构建的输出:
Python
% /path/to/custom/python/bin/python
Python 2.7.5 (default, Jun 27 2013, 11:17:33)
[GCC 4.4.7 20120313 (Red Hat 4.4.7-3)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>>
太平船务
--------------------------------------------------------------------
PIL 1.1.7 SETUP SUMMARY
--------------------------------------------------------------------
version 1.1.7
platform linux2 2.7.5 (default, Jun 27 2013, 11:17:33)
[GCC 4.4.7 20120313 (Red Hat 4.4.7-3)]
--------------------------------------------------------------------
*** TKINTER support not available
--- JPEG support available
--- ZLIB (PNG/ZIP) support available
*** FREETYPE2 support not available
*** LITTLECMS support not available
--------------------------------------------------------------------
在我的新 Python 版本中,我可以很好地导入 PIL:
% /path/to/custom/python/bin/python
Python 2.7.5 (default, Jun 27 2013, 11:17:33)
[GCC 4.4.7 20120313 (Red Hat 4.4.7-3)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import PIL
>>>
哦,我的相关部分app.yaml
:
libraries:
- name: PIL
version: "1.1.7"
但是当我启动 GAE 时,它抱怨 PIL 不可用:
% /path/to/custom/python/bin/python dev_appserver.py ~/Dropbox/personal_website-dev
INFO 2013-06-27 18:05:07,273 sdk_update_checker.py:244] Checking for updates to the SDK.
INFO 2013-06-27 18:05:07,671 sdk_update_checker.py:272] The SDK is up to date.
WARNING 2013-06-27 18:05:07,705 api_server.py:314] Could not initialize images API; you are likely missing the Python "PIL" module.
INFO 2013-06-27 18:05:07,711 api_server.py:138] Starting API server at: http://localhost:57893
INFO 2013-06-27 18:05:08,021 dispatcher.py:164] Starting server "default" running at: http://localhost:8080
INFO 2013-06-27 18:05:08,026 admin_server.py:117] Starting admin server at: http://localhost:8000
我已将 /path/to/custom/python/bin 添加为我的 PATH 中的第一项,所以我真的不明白 GAE 大惊小怪的是什么。我可以导入 PIL。为什么不能 GAE?