【问题标题】:Two conda environments conflict两个 conda 环境冲突
【发布时间】:2020-12-19 06:01:58
【问题描述】:

我已安装 anaconda 以供日常使用。最近,我安装了一个也支持 python 的商业软件。该软件将 miniconda 安装在另一个文件夹中,并为自己创建了一个环境。但是当我激活环境并使用conda 或'pip' 安装一些包时,发生了错误。 例如,conda install scipy 导致:

Traceback (most recent call last):
  File "C:\ProgramData\Miniconda3\envs\GMS_VENV_PYTHON\lib\site-packages\conda\common\serialize.py", line 19, in get_yaml
    import ruamel_yaml as yaml
ModuleNotFoundError: No module named 'ruamel_yaml'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "C:\ProgramData\Miniconda3\envs\GMS_VENV_PYTHON\lib\site-packages\conda\common\serialize.py", line 22, in get_yaml
    import ruamel.yaml as yaml
ModuleNotFoundError: No module named 'ruamel'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "C:\ProgramData\Miniconda3\envs\GMS_VENV_PYTHON\lib\site-packages\conda\exceptions.py", line 1074, in __call__
    return func(*args, **kwargs)
  File "C:\ProgramData\Miniconda3\envs\GMS_VENV_PYTHON\lib\site-packages\conda\cli\main.py", line 74, in _main
    from ..base.context import context
  File "C:\ProgramData\Miniconda3\envs\GMS_VENV_PYTHON\lib\site-packages\conda\base\context.py", line 28, in <module>
    from ..common.configuration import (Configuration, ConfigurationLoadError, MapParameter,
  File "C:\ProgramData\Miniconda3\envs\GMS_VENV_PYTHON\lib\site-packages\conda\common\configuration.py", line 40, in <module>
    from .serialize import yaml_load
  File "C:\ProgramData\Miniconda3\envs\GMS_VENV_PYTHON\lib\site-packages\conda\common\serialize.py", line 30, in <module>
    yaml = get_yaml()
  File "C:\ProgramData\Miniconda3\envs\GMS_VENV_PYTHON\lib\site-packages\conda\_vendor\auxlib\decorators.py", line 59, in _memoized_func
    result = func(*args, **kwargs)
  File "C:\ProgramData\Miniconda3\envs\GMS_VENV_PYTHON\lib\site-packages\conda\common\serialize.py", line 24, in get_yaml
    raise ImportError("No yaml library available.\n"
ImportError: No yaml library available.
To proceed, conda install ruamel_yaml

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "C:\ProgramData\Miniconda3\envs\GMS_VENV_PYTHON\lib\site-packages\conda\common\serialize.py", line 19, in get_yaml
    import ruamel_yaml as yaml
ModuleNotFoundError: No module named 'ruamel_yaml'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "C:\ProgramData\Miniconda3\envs\GMS_VENV_PYTHON\lib\site-packages\conda\common\serialize.py", line 22, in get_yaml
    import ruamel.yaml as yaml
ModuleNotFoundError: No module named 'ruamel'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "C:\ProgramData\Miniconda3\envs\GMS_VENV_PYTHON\Scripts\conda-script.py", line 12, in <module>
    sys.exit(main())
  File "C:\ProgramData\Miniconda3\envs\GMS_VENV_PYTHON\lib\site-packages\conda\cli\main.py", line 150, in main
    return conda_exception_handler(_main, *args, **kwargs)
  File "C:\ProgramData\Miniconda3\envs\GMS_VENV_PYTHON\lib\site-packages\conda\exceptions.py", line 1366, in conda_exception_handler
    return_value = exception_handler(func, *args, **kwargs)
  File "C:\ProgramData\Miniconda3\envs\GMS_VENV_PYTHON\lib\site-packages\conda\exceptions.py", line 1077, in __call__
    return self.handle_exception(exc_val, exc_tb)
  File "C:\ProgramData\Miniconda3\envs\GMS_VENV_PYTHON\lib\site-packages\conda\exceptions.py", line 1121, in handle_exception
    return self.handle_unexpected_exception(exc_val, exc_tb)
  File "C:\ProgramData\Miniconda3\envs\GMS_VENV_PYTHON\lib\site-packages\conda\exceptions.py", line 1132, in handle_unexpected_exception
    self.print_unexpected_error_report(error_report)
  File "C:\ProgramData\Miniconda3\envs\GMS_VENV_PYTHON\lib\site-packages\conda\exceptions.py", line 1187, in print_unexpected_error_report
    from .base.context import context
  File "C:\ProgramData\Miniconda3\envs\GMS_VENV_PYTHON\lib\site-packages\conda\base\context.py", line 28, in <module>
    from ..common.configuration import (Configuration, ConfigurationLoadError, MapParameter,
  File "C:\ProgramData\Miniconda3\envs\GMS_VENV_PYTHON\lib\site-packages\conda\common\configuration.py", line 40, in <module>
    from .serialize import yaml_load
  File "C:\ProgramData\Miniconda3\envs\GMS_VENV_PYTHON\lib\site-packages\conda\common\serialize.py", line 30, in <module>
    yaml = get_yaml()
  File "C:\ProgramData\Miniconda3\envs\GMS_VENV_PYTHON\lib\site-packages\conda\_vendor\auxlib\decorators.py", line 59, in _memoized_func
    result = func(*args, **kwargs)
  File "C:\ProgramData\Miniconda3\envs\GMS_VENV_PYTHON\lib\site-packages\conda\common\serialize.py", line 24, in get_yaml
    raise ImportError("No yaml library available.\n"
ImportError: No yaml library available.
To proceed, conda install ruamel_yaml

pip install scipy 引起:

Collecting scipy
  Retrying (Retry(total=4, connect=None, read=None, redirect=None, status=None)) after connection broken by 'SSLError(SSLCertVerificationError(1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: self signed certificate (_ssl.c:1051)'))': /simple/scipy/
  Retrying (Retry(total=3, connect=None, read=None, redirect=None, status=None)) after connection broken by 'SSLError(SSLCertVerificationError(1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: self signed certificate (_ssl.c:1051)'))': /simple/scipy/
  Retrying (Retry(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by 'SSLError(SSLCertVerificationError(1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: self signed certificate (_ssl.c:1051)'))': /simple/scipy/
  Retrying (Retry(total=1, connect=None, read=None, redirect=None, status=None)) after connection broken by 'SSLError(SSLCertVerificationError(1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: self signed certificate (_ssl.c:1051)'))': /simple/scipy/
  Retrying (Retry(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'SSLError(SSLCertVerificationError(1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: self signed certificate (_ssl.c:1051)'))': /simple/scipy/
  Could not fetch URL https://pypi.org/simple/scipy/: There was a problem confirming the ssl certificate: HTTPSConnectionPool(host='pypi.org', port=443): Max retries exceeded with url: /simple/scipy/ (Caused by SSLError(SSLCertVerificationError(1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: self signed certificate (_ssl.c:1051)'))) - skipping
  Could not find a version that satisfies the requirement scipy (from versions: )
No matching distribution found for scipy

有人知道如何解决这个问题吗?

【问题讨论】:

  • 这看起来很奇怪,具体来说,conda 包只应该安装在 base 环境中,但这清楚地表明它在 site-packages GMS_VENV_PYTHON。如果您尝试在激活 base 的情况下进行安装,但指定了 env,会发生什么情况?例如,从(base) $ 运行conda install -n GMS_VENV_PYTHON scipy。将conda info 的输出添加到帖子中可能会很有用。
  • 那么你同时安装了 Anaconda Miniconda?
  • 是的,我之前安装了 Anaconda,当我安装软件时,它为我安装了 Miniconda。
  • 在基本环境中,我只能看到GMS_VENV_PYTHON的位置,而没有它的名字。有什么方法可以使用环境位置安装包吗?

标签: python pip anaconda conda


【解决方案1】:

你应该先安装 ruamel.yaml

pip install ruamel.yaml

【讨论】:

  • 解释一下会很有用
  • Traceback(最近一次调用最后一次):文件“C:\ProgramData\Miniconda3\envs\GMS_VENV_PYTHON\lib\site-packages\conda\common\serialize.py”,第 19 行,在 get_yaml 导入中ruamel_yaml as yaml ModuleNotFoundError: No module named 'ruamel_yaml'
  • 在你的cmd上显示,你没有ruamel.yaml
  • 为什么不是ruamel_yaml,它似乎也不见了?
  • ruamel.yaml 和 ruamel_yaml 是一样的
【解决方案2】:

终于解决了……原来Gatan GM这个软件在创建环境的时候,安装了conda的某个版本。这是软件使用的命令:

C:\ProgramData\miniconda3\scripts\conda create --prefix C:\ProgramData\miniconda3\envs\GMS_VENV_PYTHON1 --offline --yes python-3.7.1-h8c8aaf0_6.tar.bz2 ca-certificates-2019.10.16-0.tar.bz2 openssl-1.1.1d-he774522_3.tar.bz2 numpy-1.17.1-py37hc71023c_0.tar.bz2 intel-openmp-2019.4-245.tar.bz2 tqdm-4.36.1-py_0.tar.bz2 vs2015_runtime-14.16.27012-hf0eaf9b_0.tar.bz2 libblas-3.8.0-14_mkl.tar.bz2 certifi-2019.9.11-py37_0.tar.bz2 liblapack-3.8.0-14_mkl.tar.bz2 mkl-2019.4-245.tar.bz2 conda-4.7.12-py37_0.tar.bz2 conda-package-handling-1.6.0-py37h62dcd97_0.tar.bz2 libcblas-3.8.0-14_mkl.tar.bz2

删除环境后重新创建没有conda相关包,问题解决了。

conda create --prefix C:\ProgramData\miniconda3\envs\GMS_VENV_PYTHON --offline --yes C:\ProgramData\Gatan\Python\python-3.7.1-h8c8aaf0_6.tar.bz2 C:\ProgramData\Gatan\Python\ca-certificates-2019.10.16-0.tar.bz2 C:\ProgramData\Gatan\Python\openssl-1.1.1d-he774522_3.tar.bz2 C:\ProgramData\Gatan\Python\numpy-1.17.1-py37hc71023c_0.tar.bz2 C:\ProgramData\Gatan\Python\intel-openmp-2019.4-245.tar.bz2 C:\ProgramData\Gatan\Python\tqdm-4.36.1-py_0.tar.bz2 C:\ProgramData\Gatan\Python\vs2015_runtime-14.16.27012-hf0eaf9b_0.tar.bz2 C:\ProgramData\Gatan\Python\libblas-3.8.0-14_mkl.tar.bz2 C:\ProgramData\Gatan\Python\certifi-2019.9.11-py37_0.tar.bz2 C:\ProgramData\Gatan\Python\liblapack-3.8.0-14_mkl.tar.bz2 C:\ProgramData\Gatan\Python\mkl-2019.4-245.tar.bz2 C:\ProgramData\Gatan\Python\libcblas-3.8.0-14_mkl.tar.bz2

【讨论】:

    猜你喜欢
    • 2023-03-13
    • 2022-11-08
    • 2020-02-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-10-15
    • 2021-06-17
    相关资源
    最近更新 更多