이것은 SO에서 진정으로 인기있는 질문이지만 내가 본 많은 답변 중이 오류가 실제로 무엇을 의미하고 왜 발생하는지 명확하게 설명하지 않습니다.
혼동의 원인 중 하나는 (예를 들어) 수행 pip install pycparser
하면 먼저 오류가 발생한다는 것입니다.
Failed building wheel for pycparser
그 다음에는 패키지가 다음과 같다는 메시지가 나옵니다.
Successfully installed pycparser-2.19
.
# pip3 install pycparser
Collecting pycparser
Using cached https://files.pythonhosted.org/packages/68/9e/49196946aee219aead1290e00d1e7fdeab8567783e83e1b9ab5585e6206a/pycparser-2.19.tar.gz
Building wheels for collected packages: pycparser
Running setup.py bdist_wheel for pycparser ... error
Complete output from command /usr/bin/python3 -u -c "import setuptools, tokenize;__file__='/tmp/pip-install-g_v28hpp/pycparser/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 /tmp/pip-wheel-__w_f6p0 --python-tag cp36:
Traceback (most recent call last):
File "<string>", line 1, in <module>
...
File "/usr/lib/python3.6/site-packages/pkg_resources/__init__.py", line 2349, in resolve
module = __import__(self.module_name, fromlist=['__name__'], level=0)
ModuleNotFoundError: No module named 'wheel.bdist_wheel'
----------------------------------------
Failed building wheel for pycparser
Running setup.py clean for pycparser
Failed to build pycparser
Installing collected packages: pycparser
Running setup.py install for pycparser ... done
Successfully installed pycparser-2.19
여기서 무슨 일이 일어나고 있습니까?
(어떻게 실패 할 수 있지만 여전히 설치되는지 이해하고이 패키지가 올바르게 작동한다고 믿을 수 있는지 알고 싶습니다.)
지금까지 내가 찾은 최고의 부분 설명은 이것 입니다.
pip
요구 사항에 대한 바퀴를 찾을 수없는, 그것은 소스 DIST를 다운로드하고 로컬에서 바퀴를 구축하려고합니다. 성공하면 휠은pip
향후 재설치를 위해의 캐시에 저장됩니다 . 휠 빌드 실패시pip
소스 dist에서 레거시 설치로 전환합니다 (를 호출python setup.py install
).