web-dev-qa-db-fra.com

Conda se bloque dans «environnement de résolution» lors de l'installation des packages STSci

Bonsoir, j'exécute Ubuntu 18.04.1 LTS sur une machine virtuelle sous Windows 10. J'ai installé Anaconda 5.3 sans aucun problème, mais lorsque j'essaie d'installer un environnement STSCI avec la ligne de commande:

conda create -n astroconda stsci

le terminal est bloqué dans "Solving Environment" (j'ai la version 4.5.11 de conda). Hier, j'ai attendu environ 4 heures avant d'abandonner. Je voudrais savoir s'il y a un problème connu à propos de ce problème et s'il peut être lié à la quantité de disque et RAM j'ai affecté à la machine virtuelle. Merci d'avance.

9
Paolo

J'ai eu le même problème mais j'ai mis à jour Conda et cela a fonctionné ...

$ conda update conda
4
K.K.

J'ai le même problème sur macOS 10.13.6. La création d'un environnement iraf

conda create -n iraf27 python=2.7 iraf-all pyraf-all stsci

fonctionne bien à la place.

Mise à jour: j'ai découvert que la spécification de la version python

conda create -n astroconda python=3.6 stsci

fait que l'installateur fonctionne également avec astroconda.

3
apaggi

J'écrirai une solution plus générale au problème de "l'environnement de résolution" de Conda, avec lequel j'ai eu le plus grand plaisir.

Réponse courte des choses à essayer:

  • Comme déjà mentionné, essayez de mettre à jour Conda avec conda update conda ou mieux encore, tout l'environnement de base conda update --all.
  • Spécifiez le package et la version de build à l'aide de <package>=<version>=<build> par exemple. sage=8.3=py27_3. Rechercher les versions disponibles par conda search <package>.
  • Comme pour le paquet, vous pouvez également spécifier la version python et idéalement d'autres dépendances. Vérifiez les dépendances avec conda info <package>.
  • Vérifiez la configuration actuelle dans le fichier . Condarc ou avec conda config --get et vérifiez si vous avez peut-être des restrictions supplémentaires, car normalement vous ne trouverez que le channels défini ici.
  • Lorsque vous travaillez avec des canaux supplémentaires, mettez conda-forge ou la chaîne que vous souhaitez utiliser en haut et ajoutez channel_priority: strict. Votre fichier . Condarc devrait ressembler à ceci:
channel_priority: strict
channels:
  - conda-forge
  - defaults
  • Contrairement à ce qui précède, supprimez la première ligne et essayez d'ajouter --no-channel-priority à la commande. Celui-ci m'a aidé plusieurs fois depuis la mise à jour vers Conda 4.6.

Si ci-dessus ne fonctionne pas:

Lorsque la conda semble bloquée, il y a peut-être trop d'options ou certains conflits entraînant que le solveur SAT obtient des millions de clauses.

Pour vérifier si c'est le cas, ajoutez -vv ou --debug et vous verrez plus tard des lignes comme Invoking SAT with clause count: XXX. S'il reste sur l'une de ces lignes pendant longtemps, essayez de spécifier la version des packages comme ci-dessus. S'il semble un autre problème, essayez le conda GitHub .

Un autre conseil utile si vous utilisez le conda-forge canal, est de passer en revue leur Trucs et astuces .

1
Akimiya