Je veux créer un environnement virtuel à l'aide de fichiers conda et yml.
Commander:
conda env create -n ex3 -f env.yml
Tapez ENTER, il donne le message suivant:
ResolvePackageNotFound:
- gst-plugins-base==1.8.0=0
- dbus==1.10.20=0
- opencv3==3.2.0=np111py35_0
- qt==5.6.2=5
- libxcb==1.12=1
- libgcc==5.2.0=0
- gstreamer==1.8.0=0
Cependant, je les ai sur mon Mac. Mon MacOS: High Sierra 10.13.3
Mon fichier env.yml ressemble à ceci:
name: ex3
channels:
- menpo
- defaults
dependencies:
- cairo=1.14.8=0
- certifi=2016.2.28=py35_0
- cycler=0.10.0=py35_0
- dbus=1.10.20=0
- expat=2.1.0=0
- fontconfig=2.12.1=3
- freetype=2.5.5=2
- glib=2.50.2=1
- gst-plugins-base=1.8.0=0
- gstreamer=1.8.0=0
- harfbuzz=0.9.39=2
- hdf5=1.8.17=2
- icu=54.1=0
- jbig=2.1=0
- jpeg=9b=0
- libffi=3.2.1=1
- libgcc=5.2.0=0
- libgfortran=3.0.0=1
- libiconv=1.14=0
- libpng=1.6.30=1
- libtiff=4.0.6=3
- libxcb=1.12=1
- libxml2=2.9.4=0
- matplotlib=2.0.2=np111py35_0
- mkl=2017.0.3=0
- numpy=1.11.3=py35_0
- openssl=1.0.2l=0
- pandas=0.20.1=np111py35_0
- patsy=0.4.1=py35_0
- pcre=8.39=1
- pip=9.0.1=py35_1
- pixman=0.34.0=0
- pyparsing=2.2.0=py35_0
- pyqt=5.6.0=py35_2
- python=3.5.4=0
- python-dateutil=2.6.1=py35_0
- pytz=2017.2=py35_0
- qt=5.6.2=5
- readline=6.2=2
- scipy=0.19.0=np111py35_0
- seaborn=0.8=py35_0
- setuptools=36.4.0=py35_1
- sip=4.18=py35_0
- six=1.10.0=py35_0
- sqlite=3.13.0=0
- statsmodels=0.8.0=np111py35_0
- tk=8.5.18=0
- wheel=0.29.0=py35_0
- xz=5.2.3=0
- zlib=1.2.11=0
- opencv3=3.2.0=np111py35_0
- pip:
- bleach==1.5.0
- enum34==1.1.6
- html5lib==0.9999999
- markdown==2.6.11
- protobuf==3.5.1
- tensorflow==1.4.1
- tensorflow-tensorboard==0.4.0
- werkzeug==0.14.1
Comment résoudre ce problème?
Eh bien .... Le débordement de pile m'invite à dire plus de détails, mais je pense que je décris les choses clairement, c'est triste, le débordement de pile ne prend pas en charge le téléchargement de pièces jointes ....
J'ai eu le même problème et j'ai trouvé votre question sur Google.
ResolvePackageNotFound
erreur décrit tous les packages pas encore installés, mais requis.
Pour résoudre le problème, déplacez-les dans la section pip
:
name: ex3
channels:
- menpo
- defaults
dependencies:
- cairo=1.14.8=0
- ***
- another dependencies, except not found ones
- pip:
- gst-plugins-base==1.8.0
- bleach==1.5.0
- enum34==1.1.6
- html5lib==0.9999999
- markdown==2.6.11
- protobuf==3.5.1
- tensorflow==1.4.1
- tensorflow-tensorboard==0.4.0
- werkzeug==0.14.1
*** added ***
- gst-plugins-base==1.8.0
- dbus==1.10.20
- opencv3==3.2.0
- qt==5.6.2
- libxcb==1.12
- libgcc==5.2.0
- gstreamer==1.8.0
J'ai eu le même problème et j'ai trouvé un problème GitHub lié à cela. Dans les commentaires, @kalefranz a publié une solution idéale en utilisant le --no-builds
drapeau avec exportation conda env.
conda env export --no-builds > environment.yml
Cependant, même en supprimant les numéros de build, certains packages peuvent toujours avoir un numéro de version différent sous différents systèmes d'exploitation. La meilleure façon, je pense, est de créer un fichier yml env différent pour différents systèmes d'exploitation.
J'espère que cela t'aides.
Il peut y avoir une autre raison à l'erreur " ResolvePackageNotFound " - la version des packages dont vous avez besoin peut se trouver dans une ancienne version du référentiel qui n'est pas recherché par défaut.
Les différents chemins d'accès aux emplacements dans les référentiels Anaconda peuvent être trouvés sur:
https://repo.continuum.io/pkgs/
Mon fichier yml [NW_BI.yml] est le suivant:
name: NW_BI
channels:
- 'https://repo.continuum.io/pkgs/free' # Remove this line and it fails!!!
- conda-forge
- defaults
dependencies:
- python=2.7.10
- pandas=0.16.2
- pyodbc=3.0.10
Créer en utilisant:
conda env create -f 'path to file'\NW_BI.yml
Je voulais recréer un ancien environnement !!!!
Remarque en utilisant:
Anaconda3 2019.10
Windows10
Si vous regardez cela et vous sentez trop de corvée pour changer la version de Conda packge=ver=py.*
au style pip package==ver
, J'ai écrit ce petit script qui supprime le =py.*
pièce de style Conda.
Notez que le code ci-dessous fonctionne en supposant que vous avez déjà changé package=ver
à package==ver
.
#!/bin/bash
COUNT=0
find_pip=0
while IFS= read -r line; do
COUNT=$(( $COUNT + 1 ))
# echo "$COUNT"
# echo "read it"
if echo ${line} | grep -q -- "- pip:" ; then
# echo "find it"
find_pip=1
indent=`awk -F- '{print length($1)}' <<< "$line"`
pip_indent=$(( $indent + 2 ))
# echo $indent
# echo $pip_indent
fi
line_indent=`awk -F- '{print length($1)}' <<< "$line"`
if [[ ${find_pip} ]] && [[ ${pip_indent} -eq ${line_indent} ]]; then
# echo "$line"
new_line=`echo ${line} | cut -d'=' -f-3`
new_line=" $new_line"
# echo "${new_line}"
sed -e "${COUNT}s/.*/${new_line}/" -i '' $1
fi
done < "$1"