【问题标题】:Trying to install scikit-learn shows comman exit out with error status 1尝试安装 scikit-learn 显示 comman exit out with error status 1
【发布时间】:2021-11-16 19:24:25
【问题描述】:

我正在尝试安装 sklearn 包,但它不起作用。我安装了 numpy 和 scipy 并尝试更新安装工具。我在 Python 3.10 上使用 Pycharm。这是显示的错误消息

PS C:\Users\jason\PycharmProjects\pythonProject> pip install scikit-learn
Collecting scikit-learn
  Using cached scikit-learn-1.0.1.tar.gz (6.6 MB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... error
  ERROR: Command errored out with exit status 1:
   command: 'c:\users\jason\pycharmprojects\pythonproject\venv\scripts\python.exe' 'c:\users\jason\pycharmprojects\pythonproject\venv\lib\site-packages\pip\_vendor\pe
p517\in_process\_in_process.py' prepare_metadata_for_build_wheel 'C:\Users\jason\AppData\Local\Temp\tmplhn1abe4'
       cwd: C:\Users\jason\AppData\Local\Temp\pip-install-i9q_z62l\scikit-learn_6c9f7571f4fc41f3a90540d946328d80
  Complete output (46 lines):
  Partial import of sklearn during the build process.
  No module named 'numpy.distutils._msvccompiler' in numpy.distutils; trying from distutils
  Traceback (most recent call last):
    File "c:\users\jason\pycharmprojects\pythonproject\venv\lib\site-packages\pip\_vendor\pep517\in_process\_in_process.py", line 363, in <module>
      main()
    File "c:\users\jason\pycharmprojects\pythonproject\venv\lib\site-packages\pip\_vendor\pep517\in_process\_in_process.py", line 345, in main
      json_out['return_val'] = hook(**hook_input['kwargs'])
    File "c:\users\jason\pycharmprojects\pythonproject\venv\lib\site-packages\pip\_vendor\pep517\in_process\_in_process.py", line 164, in prepare_metadata_for_build_w
heel
      return hook(metadata_directory, config_settings)
    File "C:\Users\jason\AppData\Local\Temp\pip-build-env-e2qd4m88\overlay\Lib\site-packages\setuptools\build_meta.py", line 174, in prepare_metadata_for_build_wheel
      self.run_setup()
    File "C:\Users\jason\AppData\Local\Temp\pip-build-env-e2qd4m88\overlay\Lib\site-packages\setuptools\build_meta.py", line 267, in run_setup
      super(_BuildMetaLegacyBackend,
    File "C:\Users\jason\AppData\Local\Temp\pip-build-env-e2qd4m88\overlay\Lib\site-packages\setuptools\build_meta.py", line 158, in run_setup
      exec(compile(code, __file__, 'exec'), locals())
    File "setup.py", line 319, in <module>
      setup_package()
    File "setup.py", line 315, in setup_package
      setup(**metadata)
    File "C:\Users\jason\AppData\Local\Temp\pip-build-env-e2qd4m88\overlay\Lib\site-packages\numpy\distutils\core.py", line 135, in setup
      config = configuration()
    File "setup.py", line 201, in configuration
      config.add_subpackage("sklearn")
    File "C:\Users\jason\AppData\Local\Temp\pip-build-env-e2qd4m88\overlay\Lib\site-packages\numpy\distutils\misc_util.py", line 1016, in add_subpackage
      config_list = self.get_subpackage(subpackage_name, subpackage_path,
    File "C:\Users\jason\AppData\Local\Temp\pip-build-env-e2qd4m88\overlay\Lib\site-packages\numpy\distutils\misc_util.py", line 982, in get_subpackage
      config = self._get_configuration_from_setup_py(
    File "C:\Users\jason\AppData\Local\Temp\pip-build-env-e2qd4m88\overlay\Lib\site-packages\numpy\distutils\misc_util.py", line 924, in _get_configuration_from_setup
_py
      config = setup_module.configuration(*args)
    File "sklearn\setup.py", line 85, in configuration
      cythonize_extensions(top_path, config)
    File "C:\Users\jason\AppData\Local\Temp\pip-install-i9q_z62l\scikit-learn_6c9f7571f4fc41f3a90540d946328d80\sklearn\_build_utils\__init__.py", line 47, in cythoniz
e_extensions
      basic_check_build()
    File "C:\Users\jason\AppData\Local\Temp\pip-install-i9q_z62l\scikit-learn_6c9f7571f4fc41f3a90540d946328d80\sklearn\_build_utils\pre_build_helpers.py", line 113, i
n basic_check_build
      compile_test_program(code)
    File "C:\Users\jason\AppData\Local\Temp\pip-install-i9q_z62l\scikit-learn_6c9f7571f4fc41f3a90540d946328d80\sklearn\_build_utils\pre_build_helpers.py", line 70, in
 compile_test_program
      ccompiler.compile(
    File "C:\Users\jason\AppData\Local\Programs\Python\Python310\lib\distutils\_msvccompiler.py", line 323, in compile
      self.initialize()
    File "C:\Users\jason\AppData\Local\Programs\Python\Python310\lib\distutils\_msvccompiler.py", line 220, in initialize
      vc_env = _get_vc_env(plat_spec)
    File "C:\Users\jason\AppData\Local\Temp\pip-build-env-e2qd4m88\overlay\Lib\site-packages\setuptools\msvc.py", line 316, in msvc14_get_vc_env
      return _msvc14_get_vc_env(plat_spec)
    File "C:\Users\jason\AppData\Local\Temp\pip-build-env-e2qd4m88\overlay\Lib\site-packages\setuptools\msvc.py", line 270, in _msvc14_get_vc_env
      raise distutils.errors.DistutilsPlatformError(
  distutils.errors.DistutilsPlatformError: Microsoft Visual C++ 14.0 or greater is required. Get it with "Microsoft C++ Build Tools": https://visualstudio.microsoft.c
om/visual-cpp-build-tools/
  ----------------------------------------
WARNING: Discarding https://files.pythonhosted.org/packages/62/7c/596ff7b32f655f379d3abdfa82607e5cb3b70f46baad4604706511cfeb85/scikit-learn-1.0.1.tar.gz#sha256=ac2ca9
dbb754d61cfe1c83ba8483498ef951d29b93ec09d6f002847f210a99da (from https://pypi.org/simple/scikit-learn/) (requires-python:>=3.7). Command errored out with exit status
1: 'c:\users\jason\pycharmprojects\pythonproject\venv\scripts\python.exe' 'c:\users\jason\pycharmprojects\pythonproject\venv\lib\site-packages\pip\_vendor\pep517\in_p
rocess\_in_process.py' prepare_metadata_for_build_wheel 'C:\Users\jason\AppData\Local\Temp\tmplhn1abe4' Check the logs for full command output.

【问题讨论】:

    标签: python scikit-learn pip


    【解决方案1】:

    在我的系统 (fedora35) 中安装了 python 3.10.1 时,我遇到了同样的问题。这个错误发生在我的操作系统和虚拟环境中。后来我安装了python3.7,从venv我可以安装scikit-learn。尝试从不同的python版本安装scikit-learn,应该可以。

    【讨论】:

    • 您的答案可以通过额外的支持信息得到改进。请edit 添加更多详细信息,例如引用或文档,以便其他人可以确认您的答案是正确的。你可以找到更多关于如何写好答案的信息in the help center
    【解决方案2】:

    同样的问题。 注意到 scilean 仅受 python 2.7、2.8 和 2.9 支持。 所以只需将 python 降级到 2.8,然后重新安装 scilearn。

    【讨论】:

    • 正如目前所写,您的答案尚不清楚。请edit 添加其他详细信息,以帮助其他人了解这如何解决所提出的问题。你可以找到更多关于如何写好答案的信息in the help center
    猜你喜欢
    • 2021-11-07
    • 2020-10-04
    • 2020-09-24
    • 2011-08-20
    • 1970-01-01
    • 1970-01-01
    • 2014-05-07
    • 2021-02-01
    • 1970-01-01
    相关资源
    最近更新 更多