如何解决“由于环境错误而无法安装软件包:[WinError 123]”?

时间:2020-01-30 13:29:52

标签: python python-3.x scikit-learn scipy pip

我正在尝试使用 python 3.8 下载一些软件包,但是每次我尝试安装sklearnscipy之类的软件包时,都会出现此错误:

Could not install packages due to an EnvironmentError: [WinError 123] The filename, directory name, or volume label syntax is incorrect: '"C:'

我重新安装了Visual Studios,以为它必须使用构建工具来做一些事情,但是我仍然遇到错误。我也尝试过以管理员身份运行pycharm并使用--user,但无济于事。我也尝试过在家用PC上下载相同的软件包,但出现相同的错误。

这是我遇到的全部错误

  Using cached https://files.pythonhosted.org/packages/1e/7a/dbb3be0ce9bd5c8b7e3d87328e79063f8b263b2b1bfa4774cb1147bfcd3f/sklearn-0.0.tar.gz
Collecting scikit-learn (from sklearn)
  Using cached https://files.pythonhosted.org/packages/18/28/5a48b00599b476875415b97bdfdb3849bafb31183c1d785501dbc8a77aa2/scikit-learn-0.22.1.tar.gz
Requirement already satisfied: numpy>=1.11.0 in c:\users\hp omen\pycharmprojects\evaltrade\venv\lib\site-packages (from scikit-learn->sklearn) (1.18.1)
Collecting scipy>=0.17.0 (from scikit-learn->sklearn)
  Using cached https://files.pythonhosted.org/packages/04/ab/e2eb3e3f90b9363040a3d885ccc5c79fe20c5b8a3caa8fe3bf47ff653260/scipy-1.4.1.tar.gz
  Installing build dependencies: started
  Installing build dependencies: still running...
  Installing build dependencies: finished with status 'error'
  Complete output from command "C:\Users\HP Omen\PycharmProjects\evalTrade\venv\Scripts\python.exe" "C:\Users\HP Omen\PycharmProjects\evalTrade\venv\lib\site-packages\pip-19.0.3-py3.8.egg\pip" install --ignore-installed --no-user --prefix "C:\Users\HP Omen\AppData\Local\Temp\pip-build-env-4p9slqe7\overlay" --no-warn-script-location --no-binary :none: --only-binary :none: -i https://pypi.org/simple -- wheel setuptools Cython>=0.29.13 "numpy==1.13.3; python_version=='3.5' and platform_system!='AIX'" "numpy==1.13.3; python_version=='3.6' and platform_system!='AIX'" "numpy==1.14.5; python_version=='3.7' and platform_system!='AIX'" "numpy==1.17.3; python_version>='3.8' and platform_system!='AIX'" "numpy==1.16.0; python_version=='3.5' and platform_system=='AIX'" "numpy==1.16.0; python_version=='3.6' and platform_system=='AIX'" "numpy==1.16.0; python_version=='3.7' and platform_system=='AIX'" "numpy==1.17.3; python_version>='3.8' and platform_system=='AIX'" pybind11>=2.4.0:
  Ignoring numpy: markers 'python_version == "3.5" and platform_system != "AIX"' don't match your environment
  Ignoring numpy: markers 'python_version == "3.6" and platform_system != "AIX"' don't match your environment
  Ignoring numpy: markers 'python_version == "3.7" and platform_system != "AIX"' don't match your environment
  Ignoring numpy: markers 'python_version == "3.5" and platform_system == "AIX"' don't match your environment
  Ignoring numpy: markers 'python_version == "3.6" and platform_system == "AIX"' don't match your environment
  Ignoring numpy: markers 'python_version == "3.7" and platform_system == "AIX"' don't match your environment
  Ignoring numpy: markers 'python_version >= "3.8" and platform_system == "AIX"' don't match your environment
  Collecting wheel
    Using cached https://files.pythonhosted.org/packages/81/44/db78754a73d9a88c5bd1bb692b40004410970e88aa0c5dff20b57f231505/wheel-0.34.1-py2.py3-none-any.whl
  Collecting setuptools
    Using cached https://files.pythonhosted.org/packages/a7/c5/6c1acea1b4ea88b86b03280f3fde1efa04fefecd4e7d2af13e602661cde4/setuptools-45.1.0-py3-none-any.whl
  Collecting Cython>=0.29.13
    Using cached https://files.pythonhosted.org/packages/9c/9b/706dac7338c2860cd063a28cdbf5e9670995eaea408abbf2e88ba070d90d/Cython-0.29.14.tar.gz
  Collecting numpy==1.17.3
    Using cached https://files.pythonhosted.org/packages/b6/d6/be8f975f5322336f62371c9abeb936d592c98c047ad63035f1b38ae08efe/numpy-1.17.3.zip
  Collecting pybind11>=2.4.0
    Using cached https://files.pythonhosted.org/packages/4b/4d/ae1c4d8e8b139afa9682054dd42df3b0e3b5c1731287933021b9fd7e9cc4/pybind11-2.4.3-py2.py3-none-any.whl
  Installing collected packages: wheel, setuptools, Cython, numpy, pybind11
    Running setup.py install for Cython: started
      Running setup.py install for Cython: finished with status 'done'
    Running setup.py install for numpy: started
      Running setup.py install for numpy: still running...
      Running setup.py install for numpy: finished with status 'done'
  Could not install packages due to an EnvironmentError: [WinError 123] The filename, directory name, or volume label syntax is incorrect: '"C:'


  ----------------------------------------

Command ""C:\Users\HP Omen\PycharmProjects\evalTrade\venv\Scripts\python.exe" "C:\Users\HP Omen\PycharmProjects\evalTrade\venv\lib\site-packages\pip-19.0.3-py3.8.egg\pip" install --ignore-installed --no-user --prefix "C:\Users\HP Omen\AppData\Local\Temp\pip-build-env-4p9slqe7\overlay" --no-warn-script-location --no-binary :none: --only-binary :none: -i https://pypi.org/simple -- wheel setuptools Cython>=0.29.13 "numpy==1.13.3; python_version=='3.5' and platform_system!='AIX'" "numpy==1.13.3; python_version=='3.6' and platform_system!='AIX'" "numpy==1.14.5; python_version=='3.7' and platform_system!='AIX'" "numpy==1.17.3; python_version>='3.8' and platform_system!='AIX'" "numpy==1.16.0; python_version=='3.5' and platform_system=='AIX'" "numpy==1.16.0; python_version=='3.6' and platform_system=='AIX'" "numpy==1.16.0; python_version=='3.7' and platform_system=='AIX'" "numpy==1.17.3; python_version>='3.8' and platform_system=='AIX'" pybind11>=2.4.0" failed with error code 1 in None

2 个答案:

答案 0 :(得分:1)

我今天遇到的错误与您相同,甚至检查了此帖子以寻求帮助!

请参见,您的用户名HP Omen之间有一个空格。我删除了Windows用户名和scipy已成功安装之间的空格。您可以将新帐户设置为管理员,并在当前帐户中修改名称(包括C:\ Users中的文件夹名称)。检查以下链接,以获取有关how to modify the current username.

的进一步帮助

答案 1 :(得分:0)

真正的答案是:您不应该修复它,Python / package devs应该。您应该确定无法安装的确切软件包,并将错误报告给其开发人员。
在您的情况下,NumPy是原因,就像@eorochena所说的那样,已经有bug report了。


对于您的问题,如果您使用的是过时的或最新的Python版本,则仍然会发生这种情况,对于该版本,没有可用的工具包。
在这种情况下,您可以尝试两种选择:

  • 使用以下命令从官方方向盘强制安装较早的软件包版本:
    (仅适用于过时的Python)
    pip install --only-binary :all: <failing_package>
    
  • here下载非官方的打包轮,并使用following command安装它:
    pip install <path\to\failing_package.whl>
    

编辑:嗯,这很奇怪... According to PyPI实际上在您提出要求时numpy==1.17.3有一个官方的Python 3.8轮子可供使用...
您的日志显示它正在使用缓存的NumPy源。也许您应该尝试使用--no-cache-dir选项运行它?