命令出错,退出状态 1:python setup.py egg_info 检查日志以获取完整的命令输出 - 同时通过 p



我正在尝试在与通常通过pip使用的不同(Windows)设备上下载auto-py-to-exe。但是,当运行时我收到错误(对不起,它太长了):

ERROR: Command errored out with exit status 1:
command: 'c:userstomappdatalocalprogramspythonpython38-32python.exe' -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'C:\Users\tom\AppData\Local\Temp\pip-install-aplljhe0\gevent\setup.py'"'"'; __file__='"'"'C:\Users\tom\AppData\Local\Temp\pip-install-aplljhe0\gevent\setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'rn'"'"', '"'"'n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' egg_info --egg-base 'C:UserstomAppDataLocalTemppip-install-aplljhe0geventpip-egg-info'
cwd: C:UserstomAppDataLocalTemppip-install-aplljhe0gevent
Complete output (113 lines):
Traceback (most recent call last):
File "c:userstomappdatalocalprogramspythonpython38-32libsite-packagessetuptoolsmsvc.py", line 489, in _find_latest_available_vc_ver
return self.find_available_vc_vers()[-1]
IndexError: list index out of range
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "c:userstomappdatalocalprogramspythonpython38-32libsite-packagessetuptoolssandbox.py", line 154, in save_modules
yield saved
File "c:userstomappdatalocalprogramspythonpython38-32libsite-packagessetuptoolssandbox.py", line 195, in setup_context
yield
File "c:userstomappdatalocalprogramspythonpython38-32libsite-packagessetuptoolssandbox.py", line 250, in run_setup
_execfile(setup_script, ns)
File "c:userstomappdatalocalprogramspythonpython38-32libsite-packagessetuptoolssandbox.py", line 45, in _execfile
exec(code, globals, locals)
File "C:UserstomAppDataLocalTempeasy_install-29et0so1cffi-1.14.0setup.py", line 127, in <module>
HUB_PRIMITIVES = Extension(name="gevent.__hub_primitives",
File "C:UserstomAppDataLocalTempeasy_install-29et0so1cffi-1.14.0setup.py", line 105, in uses_msvc
include_dirs=include_dirs)
File "c:userstomappdatalocalprogramspythonpython38-32libdistutilscommandconfig.py", line 225, in try_compile
self._compile(body, headers, include_dirs, lang)
File "c:userstomappdatalocalprogramspythonpython38-32libdistutilscommandconfig.py", line 132, in _compile
self.compiler.compile([src], include_dirs=include_dirs)
File "c:userstomappdatalocalprogramspythonpython38-32libdistutils_msvccompiler.py", line 360, in compile
self.initialize()
File "c:userstomappdatalocalprogramspythonpython38-32libdistutils_msvccompiler.py", line 253, in initialize
vc_env = _get_vc_env(plat_spec)
File "c:userstomappdatalocalprogramspythonpython38-32libsite-packagessetuptoolsmsvc.py", line 185, in msvc14_get_vc_env
return EnvironmentInfo(plat_spec, vc_min_ver=14.0).return_env()
File "c:userstomappdatalocalprogramspythonpython38-32libsite-packagessetuptoolsmsvc.py", line 843, in __init__
self.si = SystemInfo(self.ri, vc_ver)
File "c:userstomappdatalocalprogramspythonpython38-32libsite-packagessetuptoolsmsvc.py", line 485, in __init__
self.vc_ver = vc_ver or self._find_latest_available_vc_ver()
File "c:userstomappdatalocalprogramspythonpython38-32libsite-packagessetuptoolsmsvc.py", line 492, in _find_latest_available_vc_ver
raise distutils.errors.DistutilsPlatformError(err)
distutils.errors.DistutilsPlatformError: Microsoft Visual C++ 14.0 is required. Get it with "Microsoft Visual C++ Build Tools": https://visualstudio.microsoft.com/downloads/
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "<string>", line 1, in <module>
File "C:UserstomAppDataLocalTemppip-install-aplljhe0geventsetup.py", line 427, in <module>
run_setup(EXT_MODULES, run_make=_BUILDING)
File "C:UserstomAppDataLocalTemppip-install-aplljhe0geventsetup.py", line 328, in run_setup
setup(
File "c:userstomappdatalocalprogramspythonpython38-32libsite-packagessetuptools__init__.py", line 144, in setup
_install_setup_requires(attrs)
File "c:userstomappdatalocalprogramspythonpython38-32libsite-packagessetuptools__init__.py", line 139, in _install_setup_requires
dist.fetch_build_eggs(dist.setup_requires)
File "c:userstomappdatalocalprogramspythonpython38-32libsite-packagessetuptoolsdist.py", line 716, in fetch_build_eggs
resolved_dists = pkg_resources.working_set.resolve(
File "c:userstomappdatalocalprogramspythonpython38-32libsite-packagespkg_resources__init__.py", line 780, in resolve
dist = best[req.key] = env.best_match(
File "c:userstomappdatalocalprogramspythonpython38-32libsite-packagespkg_resources__init__.py", line 1065, in best_match
return self.obtain(req, installer)
File "c:userstomappdatalocalprogramspythonpython38-32libsite-packagespkg_resources__init__.py", line 1077, in obtain
return installer(requirement)
File "c:userstomappdatalocalprogramspythonpython38-32libsite-packagessetuptoolsdist.py", line 786, in fetch_build_egg
return cmd.easy_install(req)
File "c:userstomappdatalocalprogramspythonpython38-32libsite-packagessetuptoolscommandeasy_install.py", line 679, in easy_install
return self.install_item(spec, dist.location, tmpdir, deps)
File "c:userstomappdatalocalprogramspythonpython38-32libsite-packagessetuptoolscommandeasy_install.py", line 705, in install_item
dists = self.install_eggs(spec, download, tmpdir)
File "c:userstomappdatalocalprogramspythonpython38-32libsite-packagessetuptoolscommandeasy_install.py", line 890, in install_eggs
return self.build_and_install(setup_script, setup_base)
File "c:userstomappdatalocalprogramspythonpython38-32libsite-packagessetuptoolscommandeasy_install.py", line 1158, in build_and_install
self.run_setup(setup_script, setup_base, args)
File "c:userstomappdatalocalprogramspythonpython38-32libsite-packagessetuptoolscommandeasy_install.py", line 1144, in run_setup
run_setup(setup_script, args)
File "c:userstomappdatalocalprogramspythonpython38-32libsite-packagessetuptoolssandbox.py", line 253, in run_setup
raise
File "c:userstomappdatalocalprogramspythonpython38-32libcontextlib.py", line 131, in __exit__
self.gen.throw(type, value, traceback)
File "c:userstomappdatalocalprogramspythonpython38-32libsite-packagessetuptoolssandbox.py", line 195, in setup_context
yield
File "c:userstomappdatalocalprogramspythonpython38-32libcontextlib.py", line 131, in __exit__
self.gen.throw(type, value, traceback)
File "c:userstomappdatalocalprogramspythonpython38-32libsite-packagessetuptoolssandbox.py", line 166, in save_modules
saved_exc.resume()
File "c:userstomappdatalocalprogramspythonpython38-32libsite-packagessetuptoolssandbox.py", line 141, in resume
six.reraise(type, exc, self._tb)
File "c:userstomappdatalocalprogramspythonpython38-32libsite-packagessetuptools_vendorsix.py", line 685, in reraise
raise value.with_traceback(tb)
File "c:userstomappdatalocalprogramspythonpython38-32libsite-packagessetuptoolssandbox.py", line 154, in save_modules
yield saved
File "c:userstomappdatalocalprogramspythonpython38-32libsite-packagessetuptoolssandbox.py", line 195, in setup_context
yield
File "c:userstomappdatalocalprogramspythonpython38-32libsite-packagessetuptoolssandbox.py", line 250, in run_setup
_execfile(setup_script, ns)
File "c:userstomappdatalocalprogramspythonpython38-32libsite-packagessetuptoolssandbox.py", line 45, in _execfile
exec(code, globals, locals)
File "C:UserstomAppDataLocalTempeasy_install-29et0so1cffi-1.14.0setup.py", line 127, in <module>
HUB_PRIMITIVES = Extension(name="gevent.__hub_primitives",
File "C:UserstomAppDataLocalTempeasy_install-29et0so1cffi-1.14.0setup.py", line 105, in uses_msvc
include_dirs=include_dirs)
File "c:userstomappdatalocalprogramspythonpython38-32libdistutilscommandconfig.py", line 225, in try_compile
self._compile(body, headers, include_dirs, lang)
File "c:userstomappdatalocalprogramspythonpython38-32libdistutilscommandconfig.py", line 132, in _compile
self.compiler.compile([src], include_dirs=include_dirs)
File "c:userstomappdatalocalprogramspythonpython38-32libdistutils_msvccompiler.py", line 360, in compile
self.initialize()
File "c:userstomappdatalocalprogramspythonpython38-32libdistutils_msvccompiler.py", line 253, in initialize
vc_env = _get_vc_env(plat_spec)
File "c:userstomappdatalocalprogramspythonpython38-32libsite-packagessetuptoolsmsvc.py", line 185, in msvc14_get_vc_env
return EnvironmentInfo(plat_spec, vc_min_ver=14.0).return_env()
File "c:userstomappdatalocalprogramspythonpython38-32libsite-packagessetuptoolsmsvc.py", line 843, in __init__
self.si = SystemInfo(self.ri, vc_ver)
File "c:userstomappdatalocalprogramspythonpython38-32libsite-packagessetuptoolsmsvc.py", line 485, in __init__
self.vc_ver = vc_ver or self._find_latest_available_vc_ver()
File "c:userstomappdatalocalprogramspythonpython38-32libsite-packagessetuptoolsmsvc.py", line 492, in _find_latest_available_vc_ver
raise distutils.errors.DistutilsPlatformError(err)
distutils.errors.DistutilsPlatformError: Microsoft Visual C++ 14.0 is required. Get it with "Microsoft Visual C++ Build Tools": https://visualstudio.microsoft.com/downloads/
----------------------------------------
ERROR: Command errored out with exit status 1: python setup.py egg_info Check the logs for full command output.

即使它确实指出我需要Visual Studio C++ 14.0,我的计算机也不会安装它,我以前也不需要它。我检查了这个堆栈溢出问题,但它与另一个 pip 安装有关,没有答案。如果唯一的答案是安装Visual Studio,那么我有点搞砸了。

Edit

自从这个答案发布以来,gevent发布了几个新版本,包括Windows上Python 3.8的预构建轮子,所以pip install gevent --pre应该不再需要了 - 只需像往常一样运行pip install auto-py-to-exe,它应该可以工作。

原答案

通过以下方式允许预发行gevent版本

$ pip install gevent --pre
$ pip install auto-py-to-exe

说明:auto-py-to-exe可以安装在Windows上的Python 3.8上,没有任何问题(这可以通过运行pip install auto-py-to-exe --no-deps进行验证)。但是,它需要安装bottle-websocket,这反过来又具有gevent依赖性。gevent还没有发布一个稳定版本,为Python 3.8提供预构建的轮子(这将是1.5),所以pip没有拿起预构建的轮子,而是尝试从源代码dist构建gevent==1.4。安装gevent的预发行 1.5 版本可避免这种情况。

在您的问题中,发生了两个问题

  1. IndexError: list index out of range.
  2. distutils.errors.DistutilsPlatformError: Microsoft Visual C++ 14.0 is required

对于第一个错误,您可以尝试此代码

pip install --no-use-wheel --upgrade distribute

如果--no-use-wheel部件不起作用,请改用--no-binary :all:


对于第二个错误,您可以使用

pip install --upgrade setuptools


如果上述方法不起作用

如果您的构建工具
  1. 无法进一步回答您的问题,请尝试通过此链接手动安装构建工具。

  2. 之后,您必须重新启动PC或笔记本电脑。

  3. 然后尝试再次运行代码

用于在Mac上安装GDAL:

brew install gdal然后pip install gdal为我解决了这个问题

我在安装 mysqlclient 时收到此错误。以下是简单步骤的解决方案:

第 0 步:sudo apt install python3-dev build-essential

第 1 步:sudo apt install libssl1.1

第 2 步:sudo apt install libssl1.1=1.1.1f-1ubuntu2

第 3 步:sudo apt install libssl-dev

第 4 步:sudo apt install libmysqlclient-dev

第 5 步:pip3 install mysqlclient

就是这样!

最新更新