Я пытаюсь запустить пакет cvxpy в лямбда-функции AWS. Этот пакет отсутствует в SDK, поэтому я прочитал, что мне придется скомпилировать зависимости в zip, а затем загрузить zip в функцию lambda.
Я провел некоторые исследования иопробовал ссылки ниже, но когда я пытаюсь установить pv install cvxpy, я получаю сообщения об ошибках - я нахожусь на коробке Windows, но я знаю, что AWS Lambda работает на Linux.
Благодарю за помощь!
http://i -systems.github.io / HSE545 / machine% 20 обучение% 20all / cvxpy_install / CVXPY% 2BУстановка% 2BGuide% 2Bfor% 2BWindows.html
https://programwithus.com/learn-to-code/Pip-and-virtualenv-on-Windows/
https://medium.com/@manivannan_data/import-custom-python-packages-on-aws-lambda-function-5fbac36b40f8
https://www.cvxpy.org/install/index.html
ОБНОВЛЕНИЕ :: Ниже приведен вывод ошибки, когда я пытался выполнить ответ ниже
pip install cvxpy-t alley / python / lib / python2.7 / site-packages Сбор cvxpy с использованием cached https://files.pythonhosted.org/packages/d9/ed/90e0a13ad7ac4e7cdc2aeaefed26cebb4922f205bb778199268863fa2fbe/cvxpy-1.0.25.tar.gz ОШИБКА: команда завершилась ошибкой с состоянием выхода 1: команда: / usr / bin / python3 -c 'import sys, setuptoolsтокенизировать;sys.argv [0] = '"'" '/tmp/pip-install-r_5oawmm/cvxpy/setup.py' "'"'; file = '"'" '/ tmp / pip-install-r_5oawmm / cvxpy / setup.py' "'"'; f = getattr (tokenize, '"'" 'open' "'"', открыть) ( файл ); code = f.read (). replace ('"'" '\ r \ n' "'"', '"'" '\ n' "'"'); f.close (); exec (скомпилировать (код, file , '"' 'exec'" '"')) 'egg_info --egg-base / tmp / pip-install-r_5oawmm/ cvxpy / pip-egg-info cwd: / tmp / pip-install-r_5oawmm / cvxpy / полный вывод (171 строка): / bin / sh: svnversion: команда не нашла несуществующий путь в 'numpy / distutils': 'site.cfg 'Не удалось найти исполняемый файл gfortran Не удалось найти исполняемый файл f95 Не удалось найти исполняемый файл ifort Не удалось найти исполняемый файл ifc Не удалось найти исполняемый файл lf95 Не удалось найти исполняемый файл pgfortran Не удалось найти исполняемый файл f90 Не удалось найти исполняемый файл f77 Не удалось найти исполняемый файл Fort Couldне найти исполняемый файл efort Не удалось найти исполняемый файл efc Не удалось найти исполняемый файл g77 Не удалось найти исполняемый файл g95 Не удалось найти исполняемый путьf95 Не удалось найти исполняемый файл nagfor Не знаю, как скомпилировать ДляТран код на платформе posix Запуск из исходного каталога. /tmp/easy_install-z9uvzst7/numpy-1.17.4/setup.py:419: UserWarning: нераспознанная команда setuptools, продолжающая генерацию исходников Cython и расширение шаблонов run_build = parse_setuppy_commands () /usr/lib64/python3.6/distutils/dist.py: 261: UserWarning: неизвестный параметр распространения: 'project_urls' warnings.warn (msg) /tmp/easy_install-z9uvzst7/numpy-1.17.4/numpy/distutils/system_info.py:690: UserWarning: оптимизированный (поставщик) Blasбиблиотеки не найдены. Возвращается к библиотеке netlib Blas, которая имеет худшую производительность. Лучшая производительность должна быть легко достигнута путем переключения библиотеки Blas. self.calc_info () /tmp/easy_install-z9uvzst7/numpy-1.17.4/numpy/distutils/system_info.py:690: UserWarning: библиотеки Blas (http://www.netlib.org/blas/) не найдены. Каталоги для поиска библиотек могут бытьуказывается в файле numpy / distutils / site.cfg (раздел [blas]) или путем установки переменной среды BLAS. self.calc_info () /tmp/easy_install-z9uvzst7/numpy-1.17.4/numpy/distutils/system_info.py: 690: UserWarning: Blas (http://www.netlib.org/blas/) источники не найдены. Каталоги для поиска источников можно указать в файле numpy / distutils / site.cfg (раздел [blas_src]) или установив переменную среды BLAS_SRC. self.calc_info () /tmp/easy_install-z9uvzst7/numpy-1.17.4/numpy/distutils/system_info.py:1712: UserWarning: Lapack (http://www.netlib.org/lapack/) библиотеки не найдены. Каталоги для поиска библиотек могут бытьуказывается в файле numpy / distutils / site.cfg (раздел [lapack]) или путем установки переменной среды LAPACK. if getattr (self, '_calc_info _ {}'. format (lapack)) ():/tmp/easy_install-z9uvzst7/numpy-1.17.4/numpy/distutils/system_info.py:1712: UserWarning: Lapack (http://www.netlib.org/lapack/) источники не найдены. Каталоги для поиска источников можно указать в numpy /файл distutils / site.cfg (раздел [lapack_src]) или путем установки переменной среды LAPACK_SRC. if getattr (self, '_calc_info _ {}'. format (lapack)) (): /usr/lib64/python3.6/distutils/dist.py:261: UserWarning: неизвестный параметр распространения: 'project_urls' warnings.warn (msg) /usr/lib64/python3.6/distutils/dist.py:261: UserWarning: неизвестный параметр распространения: 'define_macros' warnings.warn(msg) трассировка (последний вызов был последним): файл "/usr/lib/python3.6/dist-packages/setuptools/sandbox.py", строка 158, в save_modules возвращает сохраненный файл "/usr/lib/python3.6/dist-packages/setuptools/sandbox.py ", строка 199, в файле setup_context yield. Файл" /usr/lib/python3.6/dist-packages/setuptools/sandbox.py ", строка 254, в файле _execfile run_setup (setup_script, ns) Файл "/usr/lib/python3.6/dist-packages/setuptools/sandbox.py", line 49, в файле _execfile exec (код, глобальные переменные, локальные файлы) Файл "/tmp/easy_install-z9uvzst7/numpy-1.17.4/setup.py", строка 444, в файле "/tmp/easy_install-z9uvzst7/numpy-1.17. 4 / setup.py ", строка 436, в файле setup_package" /tmp/easy_install-z9uvzst7/numpy-1.17.4/numpy/distutils/core.py ", строка 171, в файле настройки" / usr / lib64 / python3. 6 / distutils / core.py ", строка 148, в файле установки dist.run_commands ()" "/usr/lib64/python3.6/distutils/dist.py", строка 955, в файле run_commands self.run_command (cmd) File "/usr/lib64/python3.6/distutils/dist.py ", строка 974, в файле run_command cmd_obj.run ()" /usr/lib/python3.6/dist-packages/setuptools/command/bdist_egg.py ",строка 152, в файле запуска self.run_command ("egg_info") "/usr/lib64/python3.6/distutils/cmd.py", строка 313, в файле run_command self.distribution.run_command (команда) "/ usr / lib64/python3.6/distutils/dist.py ", строка 974, в файле run_command cmd_obj.run ()" /tmp/easy_install-z9uvzst7/numpy-1.17.4/numpy/distutils/command/egg_info.py ", строка 26, в файле запуска "/ usr / lib64 / python3. 6 / distutils / cmd.py ", строка 313, в файле run_command self.distribution.run_command (команда) Файл" /usr/lib64/python3.6/distutils/dist.py ", строка 974, в файле run_command cmd_obj.run ()Файл "/tmp/easy_install-z9uvzst7/numpy-1.17.4/numpy/distutils/command/build_src.py", строка 142, в рабочем файле "/tmp/easy_install-z9uvzst7/numpy-1.17.4/numpy/distutils/command / build_src.py ", строка 153, в файле build_sources" /tmp/easy_install-z9uvzst7/numpy-1.17.4/numpy/distutils/command/build_src.py ", строка 286, в файле build_library_sources" / tmp / easy_install-z9uvzst7 / numpy-1.17.4 / numpy / distutils / command / build_src.py ", строка 369, в файле generate_sources" numpy / core / setup.py ", строка 669, в get_mathlib_info RuntimeError: неработающая цепочка инструментов: невозможно связать простой Cпрограмма
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "<string>", line 1, in <module>
File "/tmp/pip-install-r_5oawmm/cvxpy/setup.py", line 76, in <module>
use_2to3=True,
File "/usr/lib64/python3.6/distutils/core.py", line 108, in setup
_setup_distribution = dist = klass(attrs)
File "/usr/lib/python3.6/dist-packages/setuptools/dist.py", line 325, in __init__
self.fetch_build_eggs(attrs['setup_requires'])
File "/usr/lib/python3.6/dist-packages/setuptools/dist.py", line 446, in fetch_build_eggs
replace_conflicting=True,
File "/usr/lib/python3.6/dist-packages/pkg_resources/__init__.py", line 855, in resolve
dist = best[req.key] = env.best_match(req, ws, installer)
File "/usr/lib/python3.6/dist-packages/pkg_resources/__init__.py", line 1127, in best_match
return self.obtain(req, installer)
File "/usr/lib/python3.6/dist-packages/pkg_resources/__init__.py", line 1139, in obtain
return installer(requirement)
File "/usr/lib/python3.6/dist-packages/setuptools/dist.py", line 518, in fetch_build_egg
return cmd.easy_install(req)
File "/usr/lib/python3.6/dist-packages/setuptools/command/easy_install.py", line 691, in easy_install
return self.install_item(spec, dist.location, tmpdir, deps)
File "/usr/lib/python3.6/dist-packages/setuptools/command/easy_install.py", line 717, in install_item
dists = self.install_eggs(spec, download, tmpdir)
File "/usr/lib/python3.6/dist-packages/setuptools/command/easy_install.py", line 898, in install_eggs
return self.build_and_install(setup_script, setup_base)
File "/usr/lib/python3.6/dist-packages/setuptools/command/easy_install.py", line 1137, in build_and_install
self.run_setup(setup_script, setup_base, args)
File "/usr/lib/python3.6/dist-packages/setuptools/command/easy_install.py", line 1123, in run_setup
run_setup(setup_script, args)
File "/usr/lib/python3.6/dist-packages/setuptools/sandbox.py", line 257, in run_setup
raise
File "/usr/lib64/python3.6/contextlib.py", line 99, in __exit__
self.gen.throw(type, value, traceback)
File "/usr/lib/python3.6/dist-packages/setuptools/sandbox.py", line 199, in setup_context
yield
File "/usr/lib64/python3.6/contextlib.py", line 99, in __exit__
self.gen.throw(type, value, traceback)
File "/usr/lib/python3.6/dist-packages/setuptools/sandbox.py", line 170, in save_modules
saved_exc.resume()
File "/usr/lib/python3.6/dist-packages/setuptools/sandbox.py", line 145, in resume
six.reraise(type, exc, self._tb)
File "/usr/lib/python3.6/dist-packages/pkg_resources/_vendor/six.py", line 685, in reraise
raise value.with_traceback(tb)
File "/usr/lib/python3.6/dist-packages/setuptools/sandbox.py", line 158, in save_modules
yield saved
File "/usr/lib/python3.6/dist-packages/setuptools/sandbox.py", line 199, in setup_context
yield
File "/usr/lib/python3.6/dist-packages/setuptools/sandbox.py", line 254, in run_setup
_execfile(setup_script, ns)
File "/usr/lib/python3.6/dist-packages/setuptools/sandbox.py", line 49, in _execfile
exec(code, globals, locals)
File "/tmp/easy_install-z9uvzst7/numpy-1.17.4/setup.py", line 444, in <module>
File "/tmp/easy_install-z9uvzst7/numpy-1.17.4/setup.py", line 436, in setup_package
File "/tmp/easy_install-z9uvzst7/numpy-1.17.4/numpy/distutils/core.py", line 171, in setup
File "/usr/lib64/python3.6/distutils/core.py", line 148, in setup
dist.run_commands()
File "/usr/lib64/python3.6/distutils/dist.py", line 955, in run_commands
self.run_command(cmd)
File "/usr/lib64/python3.6/distutils/dist.py", line 974, in run_command
cmd_obj.run()
File "/usr/lib/python3.6/dist-packages/setuptools/command/bdist_egg.py", line 152, in run
self.run_command("egg_info")
File "/usr/lib64/python3.6/distutils/cmd.py", line 313, in run_command
self.distribution.run_command(command)
File "/usr/lib64/python3.6/distutils/dist.py", line 974, in run_command
cmd_obj.run()
File "/tmp/easy_install-z9uvzst7/numpy-1.17.4/numpy/distutils/command/egg_info.py", line 26, in run
File "/usr/lib64/python3.6/distutils/cmd.py", line 313, in run_command
self.distribution.run_command(command)
File "/usr/lib64/python3.6/distutils/dist.py", line 974, in run_command
cmd_obj.run()
File "/tmp/easy_install-z9uvzst7/numpy-1.17.4/numpy/distutils/command/build_src.py", line 142, in run
File "/tmp/easy_install-z9uvzst7/numpy-1.17.4/numpy/distutils/command/build_src.py", line 153, in build_sources
File "/tmp/easy_install-z9uvzst7/numpy-1.17.4/numpy/distutils/command/build_src.py", line 286, in build_library_sources
File "/tmp/easy_install-z9uvzst7/numpy-1.17.4/numpy/distutils/command/build_src.py", line 369, in generate_sources
File "numpy/core/setup.py", line 669, in get_mathlib_info
RuntimeError: Broken toolchain: cannot link a simple C program
----------------------------------------
ОШИБКА: команда завершилась ошибкой с состоянием выхода 1: python setup.py egg_info Проверьте журналы для полного вывода команды.