Подтвердить что ты не робот

Ошибка: "conda" может быть установлен только в корневую среду

Я получаю следующую ошибку, когда пытаюсь установить пакет python seaborn:

conda install --name dato-env seaborn
Error: 'conda' can only be installed into the root environment

Это, конечно, озадачивает, потому что я не пытаюсь установить conda. Я пытаюсь установить морское судно.

Это моя настройка. У меня 3 среды python:

  • dato-env
  • py35
  • корень

I успешно установил seaborn ранее (с командой conda install seaborn), но он установлен в корневой среде (и недоступен для моих iPython-ноутбуков, использующих dato-env).

Я попытался установить seaborn в среде dato-env, чтобы он был доступен для моего кода ноутбука iPython, но я продолжаю получать вышеупомянутую ошибку, говоря, что я должен установить conda в корневую среду, (conda устанавливается в корневую среду)

Как успешно установить морское судно в мой dato-env?

Заранее благодарим за любую помощь.

Edit:

> conda --version
conda 4.0.5
> conda env list
dato-env              *  /Users/*******/anaconda/envs/dato-env
py35                     /Users/*******/anaconda/envs/py35
root                     /Users/*******/anaconda
4b9b3361

Ответ 1

Если вы клонируете root, вы получаете conda-build и conda-env в своей новой среде, но afaik они не должны быть там и не требуются вне root, если root остается на вашем пути. Поэтому, если вы сначала удалите их из своего root-root, ваша команда должна работать. Например, у меня была такая же ошибка при попытке обновить anaconda, но не получило ошибку, сделав это следующим образом:

source activate my-env
conda remove conda-build
conda remove conda-env
conda update anaconda

Смотрите эту тему для альтернативы и фона: https://groups.google.com/a/continuum.io/forum/#!topic/anaconda/PkXOIqlEPCU

Ответ 2

Скопировать корневую среду в env1.

conda create --name env1 --clone root

Активируйте свою среду.

source activate env1

Удалите некоторые пакеты conda, которые должны быть в корневой среде.

conda remove conda
conda remove conda-build
conda remove conda-env

Затем вы можете что-то вроде этого.

conda update --all

Ответ 3

Я смог реплицировать проблему для нескольких разных пакетов. Ошибка возникает только тогда, когда я пытался установить пакеты в envs, созданные с помощью опции conda create -clone, а не созданных с нуля.