I have the following conda environment file environment.yml
:
name: testproject
channels:
- defaults
dependencies:
- python=3.7
prefix: /opt/projects/testproject
Before creating the environment, only the base environment exists:
(base) me@mymachine:/opt/projects/testproject$ conda env list
# conda environments:
#
base * /opt/anaconda/anaconda3
When trying to create the environment, I get the following error:
(base) me@mymachine:/opt/projects/testproject$ conda create -f environment.yml
CondaValueError: The target prefix is the base prefix. Aborting.
What does this error mean?
You need to use
conda env create -f environment.yml
Notice the extra env
after conda
and before create
.
For more information check the documentation.
You can also get this error if you accidentally reverse the arguments:
conda create env -f environment.yml
. The correction remains the same.Is it only me or syntax of conda is often confusing.
There are definitely a few commands that are quite confusing, especially around environment creation :-)