我想在我的 Mac OS Catalina (10.15.7) 上运行基于 Python 的项目的本地副本。
项目使用诗歌作为 Python 依赖项管理工具。
在安装 python 依赖项时,它会在遵守 Greenlet 包时崩溃。
我听说此类问题可能是由 Mac OS 操作系统的具体情况引起的。
为了正确安装它,我必须做什么?
<<MacBook-Pro-Gleb:project gleb$ poetry install
Installing dependencies from lock file
Package operations: 31 installs, 0 updates, 0 removals
• Installing greenlet (0.4.15): Failed
EnvCommandError
Command ['/Users/gleb/Library/Caches/pypoetry/virtualenvs/autobot-38lNXpzO-py3.9/bin/pip', 'install', '--no-deps', 'file:///Users/gleb/Library/Caches/pypoetry/artifacts/19/d6/61/d62a5b953b17327bddb648b63229019fb6f788679101a7ac2002936be3/greenlet-0.4.15.tar.gz'] errored with the following return code 1, and output:
Processing /Users/gleb/Library/Caches/pypoetry/artifacts/19/d6/61/d62a5b953b17327bddb648b63229019fb6f788679101a7ac2002936be3/greenlet-0.4.15.tar.gz
Building wheels for collected packages: greenlet
Building wheel for greenlet (setup.py): started
Building wheel for greenlet (setup.py): finished with status 'error'
ERROR: Command errored out with exit status 1:
command: /Users/gleb/Library/Caches/pypoetry/virtualenvs/autobot-38lNXpzO-py3.9/bin/python -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/private/var/folders/jx/6pdyz9ds1yq9_79yz1pv0g440000gn/T/pip-req-build-a3ixiuh6/setup.py'"'"'; __file__='"'"'/private/var/folders/jx/6pdyz9ds1yq9_79yz1pv0g440000gn/T/pip-req-build-a3ixiuh6/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' bdist_wheel -d /private/var/folders/jx/6pdyz9ds1yq9_79yz1pv0g440000gn/T/pip-wheel-3zoj_ptd
cwd: /private/var/folders/jx/6pdyz9ds1yq9_79yz1pv0g440000gn/T/pip-req-build-a3ixiuh6/
Complete output (21 lines):
running bdist_wheel
running build
running build_ext
building 'greenlet' extension
creating build
creating build/temp.macosx-10.9-x86_64-3.9
gcc -Wno-unused-result -Wsign-compare -Wunreachable-code -fno-common -dynamic -DNDEBUG -g -fwrapv -O3 -Wall -arch x86_64 -g -I/Users/gleb/Library/Caches/pypoetry/virtualenvs/autobot-38lNXpzO-py3.9/include -I/Library/Frameworks/Python.framework/Versions/3.9/include/python3.9 -c greenlet.c -o build/temp.macosx-10.9-x86_64-3.9/greenlet.o
greenlet.c:823:13: warning: 'PyEval_CallObjectWithKeywords' is deprecated [-Wdeprecated-declarations]
result = PyEval_CallObjectWithKeywords(
^
/Library/Frameworks/Python.framework/Versions/3.9/include/python3.9/ceval.h:17:1: note: 'PyEval_CallObjectWithKeywords' has been explicitly marked deprecated here
Py_DEPRECATED(3.9) PyAPI_FUNC(PyObject *) PyEval_CallObjectWithKeywords(
^
/Library/Frameworks/Python.framework/Versions/3.9/include/python3.9/pyport.h:508:54: note: expanded from macro 'Py_DEPRECATED'
#define Py_DEPRECATED(VERSION_UNUSED) __attribute__((__deprecated__))
^
greenlet.c:1046:4: error: use of undeclared identifier '_Py_DEC_REFTOTAL'
_Py_DEC_REFTOTAL;
^
1 warning and 1 error generated.
error: command '/usr/bin/gcc' failed with exit code 1
----------------------------------------
ERROR: Failed building wheel for greenlet
Running setup.py clean for greenlet
Failed to build greenlet
Installing collected packages: greenlet
Running setup.py install for greenlet: started
Running setup.py install for greenlet: finished with status 'error'
ERROR: Command errored out with exit status 1:
command: /Users/gleb/Library/Caches/pypoetry/virtualenvs/autobot-38lNXpzO-py3.9/bin/python -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/private/var/folders/jx/6pdyz9ds1yq9_79yz1pv0g440000gn/T/pip-req-build-a3ixiuh6/setup.py'"'"'; __file__='"'"'/private/var/folders/jx/6pdyz9ds1yq9_79yz1pv0g440000gn/T/pip-req-build-a3ixiuh6/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record /private/var/folders/jx/6pdyz9ds1yq9_79yz1pv0g440000gn/T/pip-record-h_bpfi00/install-record.txt --single-version-externally-managed --compile --install-headers /Users/gleb/Library/Caches/pypoetry/virtualenvs/autobot-38lNXpzO-py3.9/include/site/python3.9/greenlet
cwd: /private/var/folders/jx/6pdyz9ds1yq9_79yz1pv0g440000gn/T/pip-req-build-a3ixiuh6/
Complete output (21 lines):
running install
running build
running build_ext
building 'greenlet' extension
creating build
creating build/temp.macosx-10.9-x86_64-3.9
gcc -Wno-unused-result -Wsign-compare -Wunreachable-code -fno-common -dynamic -DNDEBUG -g -fwrapv -O3 -Wall -arch x86_64 -g -I/Users/gleb/Library/Caches/pypoetry/virtualenvs/autobot-38lNXpzO-py3.9/include -I/Library/Frameworks/Python.framework/Versions/3.9/include/python3.9 -c greenlet.c -o build/temp.macosx-10.9-x86_64-3.9/greenlet.o
greenlet.c:823:13: warning: 'PyEval_CallObjectWithKeywords' is deprecated [-Wdeprecated-declarations]
result = PyEval_CallObjectWithKeywords(
^
/Library/Frameworks/Python.framework/Versions/3.9/include/python3.9/ceval.h:17:1: note: 'PyEval_CallObjectWithKeywords' has been explicitly marked deprecated here
Py_DEPRECATED(3.9) PyAPI_FUNC(PyObject *) PyEval_CallObjectWithKeywords(
^
/Library/Frameworks/Python.framework/Versions/3.9/include/python3.9/pyport.h:508:54: note: expanded from macro 'Py_DEPRECATED'
#define Py_DEPRECATED(VERSION_UNUSED) __attribute__((__deprecated__))
^
greenlet.c:1046:4: error: use of undeclared identifier '_Py_DEC_REFTOTAL'
_Py_DEC_REFTOTAL;
^
1 warning and 1 error generated.
error: command '/usr/bin/gcc' failed with exit code 1
----------------------------------------
ERROR: Command errored out with exit status 1: /Users/gleb/Library/Caches/pypoetry/virtualenvs/autobot-38lNXpzO-py3.9/bin/python -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/private/var/folders/jx/6pdyz9ds1yq9_79yz1pv0g440000gn/T/pip-req-build-a3ixiuh6/setup.py'"'"'; __file__='"'"'/private/var/folders/jx/6pdyz9ds1yq9_79yz1pv0g440000gn/T/pip-req-build-a3ixiuh6/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record /private/var/folders/jx/6pdyz9ds1yq9_79yz1pv0g440000gn/T/pip-record-h_bpfi00/install-record.txt --single-version-externally-managed --compile --install-headers /Users/gleb/Library/Caches/pypoetry/virtualenvs/autobot-38lNXpzO-py3.9/include/site/python3.9/greenlet Check the logs for full command output.
at /Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-packages/poetry/utils/env.py:1074 in _run
1070│ output = subprocess.check_output(
1071│ cmd, stderr=subprocess.STDOUT, **kwargs
1072│ )
1073│ except CalledProcessError as e:
→ 1074│ raise EnvCommandError(e, input=input_)
1075│
1076│ return decode(output)
1077│
1078│ def execute(self, bin, *args, **kwargs):
MacBook-Pro-Gleb:autobot gleb$ poetry install
Installing dependencies from lock file
Package operations: 31 installs, 0 updates, 0 removals
• Installing greenlet (0.4.15): Failed
EnvCommandError
Command ['/Users/gleb/Library/Caches/pypoetry/virtualenvs/autobot-38lNXpzO-py3.9/bin/pip', 'install', '--no-deps', 'file:///Users/gleb/Library/Caches/pypoetry/artifacts/19/d6/61/d62a5b953b17327bddb648b63229019fb6f788679101a7ac2002936be3/greenlet-0.4.15.tar.gz'] errored with the following return code 1, and output:
Processing /Users/gleb/Library/Caches/pypoetry/artifacts/19/d6/61/d62a5b953b17327bddb648b63229019fb6f788679101a7ac2002936be3/greenlet-0.4.15.tar.gz
Building wheels for collected packages: greenlet
Building wheel for greenlet (setup.py): started
Building wheel for greenlet (setup.py): finished with status 'error'
ERROR: Command errored out with exit status 1:
command: /Users/gleb/Library/Caches/pypoetry/virtualenvs/autobot-38lNXpzO-py3.9/bin/python -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/private/var/folders/jx/6pdyz9ds1yq9_79yz1pv0g440000gn/T/pip-req-build-9pzelg8a/setup.py'"'"'; __file__='"'"'/private/var/folders/jx/6pdyz9ds1yq9_79yz1pv0g440000gn/T/pip-req-build-9pzelg8a/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' bdist_wheel -d /private/var/folders/jx/6pdyz9ds1yq9_79yz1pv0g440000gn/T/pip-wheel-oocl1xdw
cwd: /private/var/folders/jx/6pdyz9ds1yq9_79yz1pv0g440000gn/T/pip-req-build-9pzelg8a/
Complete output (21 lines):
running bdist_wheel
running build
running build_ext
building 'greenlet' extension
creating build
creating build/temp.macosx-10.9-x86_64-3.9
gcc -Wno-unused-result -Wsign-compare -Wunreachable-code -fno-common -dynamic -DNDEBUG -g -fwrapv -O3 -Wall -arch x86_64 -g -I/Users/gleb/Library/Caches/pypoetry/virtualenvs/autobot-38lNXpzO-py3.9/include -I/Library/Frameworks/Python.framework/Versions/3.9/include/python3.9 -c greenlet.c -o build/temp.macosx-10.9-x86_64-3.9/greenlet.o
greenlet.c:823:13: warning: 'PyEval_CallObjectWithKeywords' is deprecated [-Wdeprecated-declarations]
result = PyEval_CallObjectWithKeywords(
^
/Library/Frameworks/Python.framework/Versions/3.9/include/python3.9/ceval.h:17:1: note: 'PyEval_CallObjectWithKeywords' has been explicitly marked deprecated here
Py_DEPRECATED(3.9) PyAPI_FUNC(PyObject *) PyEval_CallObjectWithKeywords(
^
/Library/Frameworks/Python.framework/Versions/3.9/include/python3.9/pyport.h:508:54: note: expanded from macro 'Py_DEPRECATED'
#define Py_DEPRECATED(VERSION_UNUSED) __attribute__((__deprecated__))
^
greenlet.c:1046:4: error: use of undeclared identifier '_Py_DEC_REFTOTAL'
_Py_DEC_REFTOTAL;
^
1 warning and 1 error generated.
error: command '/usr/bin/gcc' failed with exit code 1
----------------------------------------
ERROR: Failed building wheel for greenlet
Running setup.py clean for greenlet
Failed to build greenlet
Installing collected packages: greenlet
Running setup.py install for greenlet: started
Running setup.py install for greenlet: finished with status 'error'
ERROR: Command errored out with exit status 1:
command: /Users/gleb/Library/Caches/pypoetry/virtualenvs/autobot-38lNXpzO-py3.9/bin/python -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/private/var/folders/jx/6pdyz9ds1yq9_79yz1pv0g440000gn/T/pip-req-build-9pzelg8a/setup.py'"'"'; __file__='"'"'/private/var/folders/jx/6pdyz9ds1yq9_79yz1pv0g440000gn/T/pip-req-build-9pzelg8a/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record /private/var/folders/jx/6pdyz9ds1yq9_79yz1pv0g440000gn/T/pip-record-olyg14c_/install-record.txt --single-version-externally-managed --compile --install-headers /Users/gleb/Library/Caches/pypoetry/virtualenvs/autobot-38lNXpzO-py3.9/include/site/python3.9/greenlet
cwd: /private/var/folders/jx/6pdyz9ds1yq9_79yz1pv0g440000gn/T/pip-req-build-9pzelg8a/
Complete output (21 lines):
running install
running build
running build_ext
building 'greenlet' extension
creating build
creating build/temp.macosx-10.9-x86_64-3.9
gcc -Wno-unused-result -Wsign-compare -Wunreachable-code -fno-common -dynamic -DNDEBUG -g -fwrapv -O3 -Wall -arch x86_64 -g -I/Users/gleb/Library/Caches/pypoetry/virtualenvs/autobot-38lNXpzO-py3.9/include -I/Library/Frameworks/Python.framework/Versions/3.9/include/python3.9 -c greenlet.c -o build/temp.macosx-10.9-x86_64-3.9/greenlet.o
greenlet.c:823:13: warning: 'PyEval_CallObjectWithKeywords' is deprecated [-Wdeprecated-declarations]
result = PyEval_CallObjectWithKeywords(
^
/Library/Frameworks/Python.framework/Versions/3.9/include/python3.9/ceval.h:17:1: note: 'PyEval_CallObjectWithKeywords' has been explicitly marked deprecated here
Py_DEPRECATED(3.9) PyAPI_FUNC(PyObject *) PyEval_CallObjectWithKeywords(
^
/Library/Frameworks/Python.framework/Versions/3.9/include/python3.9/pyport.h:508:54: note: expanded from macro 'Py_DEPRECATED'
#define Py_DEPRECATED(VERSION_UNUSED) __attribute__((__deprecated__))
^
greenlet.c:1046:4: error: use of undeclared identifier '_Py_DEC_REFTOTAL'
_Py_DEC_REFTOTAL;
^
1 warning and 1 error generated.
error: command '/usr/bin/gcc' failed with exit code 1
----------------------------------------
ERROR: Command errored out with exit status 1: /Users/gleb/Library/Caches/pypoetry/virtualenvs/autobot-38lNXpzO-py3.9/bin/python -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/private/var/folders/jx/6pdyz9ds1yq9_79yz1pv0g440000gn/T/pip-req-build-9pzelg8a/setup.py'"'"'; __file__='"'"'/private/var/folders/jx/6pdyz9ds1yq9_79yz1pv0g440000gn/T/pip-req-build-9pzelg8a/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record /private/var/folders/jx/6pdyz9ds1yq9_79yz1pv0g440000gn/T/pip-record-olyg14c_/install-record.txt --single-version-externally-managed --compile --install-headers /Users/gleb/Library/Caches/pypoetry/virtualenvs/autobot-38lNXpzO-py3.9/include/site/python3.9/greenlet Check the logs for full command output.
at /Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-packages/poetry/utils/env.py:1074 in _run
1070│ output = subprocess.check_output(
1071│ cmd, stderr=subprocess.STDOUT, **kwargs
1072│ )
1073│ except CalledProcessError as e:
→ 1074│ raise EnvCommandError(e, input=input_)
1075│
1076│ return decode(output)
1077│
1078│ def execute(self, bin, *args, **kwargs):