Python 如何在谷歌云上安装ortools库
我正在使用命令Python 如何在谷歌云上安装ortools库,python,google-app-engine,google-cloud-platform,or-tools,Python,Google App Engine,Google Cloud Platform,Or Tools,我正在使用命令pip install-t lib/ortools,库ortools被安装到lib/文件夹中。但是,当我在Google App Engine上部署包含该库的Flask项目时,出现了以下错误: (/base/alloc/tmpfs/dynamic_runtimes/python27g/931d17f05408b3ef/python27/python27_lib/versions/1/google/appengine/runtime/wsgi.py:263) Traceback (mo
pip install-t lib/ortools
,库ortools
被安装到lib/
文件夹中。但是,当我在Google App Engine上部署包含该库的Flask项目时,出现了以下错误:
(/base/alloc/tmpfs/dynamic_runtimes/python27g/931d17f05408b3ef/python27/python27_lib/versions/1/google/appengine/runtime/wsgi.py:263)
Traceback (most recent call last):
File "/base/alloc/tmpfs/dynamic_runtimes/python27g/931d17f05408b3ef/python27/python27_lib/versions/1/google/appengine/runtime/wsgi.py", line 240, in Handle
handler = _config_handle.add_wsgi_middleware(self._LoadHandler())
File "/base/alloc/tmpfs/dynamic_runtimes/python27g/931d17f05408b3ef/python27/python27_lib/versions/1/google/appengine/runtime/wsgi.py", line 299, in _LoadHandler
handler, path, err = LoadObject(self._handler)
File "/base/alloc/tmpfs/dynamic_runtimes/python27g/931d17f05408b3ef/python27/python27_lib/versions/1/google/appengine/runtime/wsgi.py", line 85, in LoadObject
obj = __import__(path[0])
File "/base/data/home/apps/b~cidy-1539116366694/20190316t002011.416796594015344313/main.py", line 5, in <module>
from ortools.constraint_solver import pywrapcp
File "/base/data/home/apps/b~cidy-1539116366694/20190316t002011.416796594015344313/lib/ortools/constraint_solver/pywrapcp.py", line 17, in <module>
_pywrapcp = swig_import_helper()
File "/base/data/home/apps/b~cidy-1539116366694/20190316t002011.416796594015344313/lib/ortools/constraint_solver/pywrapcp.py", line 16, in swig_import_helper
return importlib.import_module('_pywrapcp')
File "/base/alloc/tmpfs/dynamic_runtimes/python27g/931d17f05408b3ef/python27/python27_dist/lib/python2.7/importlib/__init__.py", line 37, in import_module
__import__(name)
ImportError: No module named _pywrapcp
(/base/alloc/tmpfs/dynamic_runtimes/python27g/931d17f05408b3ef/python27/python27_lib/versions/1/google/appengine/runtime/wsgi.py:263)
回溯(最近一次呼叫最后一次):
文件“/base/alloc/tmpfs/dynamic_runtimes/python27g/931d17f05408b3ef/python27/python27_lib/versions/1/google/appengine/runtime/wsgi.py”,第240行,在Handle中
handler=\u config\u handle.add\u wsgi\u中间件(self.\u LoadHandler())
LoadHandler中的文件“/base/alloc/tmpfs/dynamic_runtimes/python27g/931d17f05408b3ef/python27/python27_lib/versions/1/google/appengine/runtime/wsgi.py”,第299行
处理程序,路径,err=LoadObject(self.\u处理程序)
LoadObject第85行的文件“/base/alloc/tmpfs/dynamic_runtimes/python27g/931d17f05408b3ef/python27/python27_lib/versions/1/google/appengine/runtime/wsgi.py”
obj=\uuuuuuuuuuuuuu导入(路径[0])
文件“/base/data/home/apps/b~cidy-153911636694/20190316t002011.416796594015344313/main.py”,第5行,在
从ortools.constraint_解算器导入pywrapcp
文件“/base/data/home/apps/b~cidy-153911636694/20190316t002011.416796594015344313/lib/ortools/constraint_solver/pywrapcp.py”,第17行
_pywrapcp=swig\u import\u helper()
swig_import_helper中的文件“/base/data/home/apps/b~cidy-153911636694/20190316t002011.416796594015344313/lib/ortools/constraint_solver/pywrapcp.py”,第16行
返回importlib.import\u模块(“pywrapcp”)
文件“/base/alloc/tmpfs/dynamic_运行时/python27g/931d17f05408b3ef/python27/python27_dist/lib/python2.7/importlib/uu init_uu.py”,第37行,在导入模块中
__导入(名称)
ImportError:没有名为_pywrapcp的模块
您在macOS或Linux上运行pip吗?如果在macOS上构建,请参阅
根据的官方网站,我认为ortools取决于平台
当您使用平台依赖性python库时,最好使用pip安装-t lib/ortools。
在linux环境上。第1代(Python 2.7)标准环境沙箱有非常严格的要求。在这方面特别相关的是:
Python运行时环境的所有代码必须是纯Python,并且
不包括任何必须编译的C扩展或其他代码
或工具
无法满足此要求,因为它们需要(特定于平台的)编译。发件人:
注意:您可以仅从该平台从源代码为任何受支持的平台构建工具套件。或工具Makefile不支持
为任何受支持的平台交叉编译
您可能仍然可以在GAE上使用它们:
- 在第二代标准环境中(Python3.7,更宽松的限制)-但我不确定是否支持pip驱动的包构建,以及是否提供了它所需的所有工具
- 在灵活的环境中,最有可能使用的是允许您添加甚至非python依赖项的,即构建
可能需要的额外库和工具ortools
requirement.txt
文件在两种环境中都能工作。那么它在标准环境中能工作吗?我(在另一个模块上)遇到了类似的错误。。我在标准的2.7环境中进行了尝试,将appengine\u config.py
配置为。在部署之前,在云文件夹中运行<代码> PIP安装-T LIB/ORoSoS/<代码>是否在“应用程序”文件夹中?@ CalelelpIO不在2.7,只有3.7是,Python接口或工具是C++库周围的包装器。因此,该模块不是纯python。我们为Mac OS 10.14、visual studio 2017和manylinux提供模块。