Если смысл нового env в том, чтобы в нем было geopandas
, то дайте Конде знать об этом с самого начала, и он может решить зависимости заранее:
conda create -n gp python=2 geopandas
Однако, как указывает @martinfleis, у вас все еще могут быть проблемы с приоритетом канала. При тестировании на платформе linux-64
я смог установить geopandas=0.4.0
только с канала anaconda
, но для установки geopandas=0.5.0
требовались как anaconda
, так и conda-forge
, и он мог быть предоставлен в любом из приоритетов. В тестировании @ martinfleis работал только приоритет conda-forge
. Следовательно,
conda create -n gp -c conda-forge -c defaults --override-channels python=2 geopandas
будет консенсусной командой.
Примечание о приоритетах канала
Можно изменить приоритеты канала на уровне конфигурации, как в комментарии @ martinfleis к OP, и в этом случае это будет сделано так, чтобы первая команда выше работала точно так же, как вторая. Однако нужно только сделать такое изменение, чтобы оно действительно совпадало с вашими предпочтениями канала, а не для конкретной установки.
Альтернатива, как показано во второй команде выше, заключается во временном указании приоритетов канала в команде create
или install
. В этой команде -c conda-forge
, стоящий первым, дает ей приоритет над -c defaults
. Флаг --override-channels
отключает любые другие каналы, которые могут быть в постоянных настройках конфигурации.
Кроме того, можно по-прежнему указывать отдельные пакеты, приходящие с определенного канала, добавляя префикс <channel>::
к имени пакета. Например, если во второй команде я все еще хочу получить исходный код Python из defaults
, это будет defaults::python=2
.
Если у вас есть более пары исключений, которые вы хотите указать, то, вероятно, пришло время рассмотреть возможность установки из YAML.