web-dev-qa-db-fra.com

Comment faire fonctionner Conda et Virtualenv sur mac OS Catalina?

Auparavant, Conda fonctionnait correctement sur Mojave, mais j'ai constaté que la mise à niveau vers Catalina déplace le dossier "anaconda3" vers votre bureau> Éléments déplacés> Sécurité> anaconda3. Il semble que les paramètres de sécurité de Catalina ne permettent plus aux applications de s'installer directement dans le répertoire utilisateur.

J'ai essayé la suggestion ici , écrite ci-dessous:

Salut, je pourrais avoir une solution

  • Copiez le dossier anaconda3 situé dans Éléments déplacés vers/Users/myname /
  • Terminal ouvert
  • Entrez: export PATH = ''/Users/myname/anaconda3/bin: $ PATH "
  • Entrez: conda init zsh

Ça a marché! Bonne chance!

Mais ça ne marche pas pour moi. Après conda init zsh Je reçois:

-bash:/Users/USER/anaconda3/bin/conda:/anaconda3/bin/python: mauvais interprète: aucun fichier ou répertoire de ce type

Comment puis-je remettre Conda en marche sans perdre tous mes environnements virtuels? Merci!


Mise à jour

J'ai fait travailler Conda suite à la suggestion de @Ted Shaowang. Cela signifie que conda env list affiche tous les environnements virtuels créés via Conda.

Cependant, je rencontre toujours un problème avec virtualenv car depuis que j'ai changé les emplacements de fichiers par défaut anaconda3, python est introuvable.

L'exécutable python situé à .virtualenvs/env/bin/python ne peut être trouvé. Dois-je apporter d'autres modifications pour que python fonctionne également à partir de virtualenv?

12
rrz0

J'avais rencontré le même problème, et la solution suivante a fonctionné pour moi, et c'est la solution la plus simple:

Au lieu de déconner en copiant le fichier anaconda3 des éléments déplacés dans le répertoire User/USERNAME, mieux serait simplement de réinstaller la dernière version du navigateur anaconda à partir de son site officiel: https://www.anaconda.com/distribution/#macos

Pendant l'installation, il vous demandera quelques autorisations qui sont le résultat de nouvelles politiques de sécurité Apple, accordez-les simplement, et cela fonctionne comme il se doit après cette nouvelle installation!

0
shreyas labhsetwar

J'ai le même problème, et cela fonctionne pour moi: Ma solution:

  1. Copiez votre anaconda3 à partir du dossier Éléments déplacés
  2. Coller dans User/YourUserName
  3. Ouvrez le fichier conda dans anaconda3/bin avec l'éditeur et modifiez la première ligne #!/anaconda3/bin/python à #!/Users/YourUserName/anaconda3/bin/python
  4. Enregistrez-le et exécutez le fichier conda
  5. Terminal ouvert
  6. Lance ça : export PATH=''/Users/YourUserName/anaconda3/bin:$PATH"
  7. Courir conda init zsh
0
TANK NK

C'est ce qui a fonctionné pour moi.

Ce sont mes fichiers d'en-tête (Catalina 10.15):

/Library/Developer/CommandLineTools/usr/include/c++/v1/stdio.h
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/sys/stdio.h
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/stdio.h
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/System/Library/Frameworks/Kernel.framework/Versions/A/Headers/sys/stdio.h
/Library/Developer/CommandLineTools/SDKs/MacOSX10.15.sdk/usr/include/sys/stdio.h
/Library/Developer/CommandLineTools/SDKs/MacOSX10.15.sdk/usr/include/stdio.h
/Library/Developer/CommandLineTools/SDKs/MacOSX10.15.sdk/System/Library/Frameworks/Kernel.framework/Versions/A/Headers/sys/stdio.h

Courir Sudo find /Library -name stdio.h pour voir où se trouve le vôtre.

Fichiers d'en-tête Mojave 10.14:

$ Sudo find /Library -name stdio.h 
/Library/Developer/CommandLineTools/usr/include/c++/v1/stdio.h
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/stdio.h
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks/Kernel.framework/Versions/A/Headers/sys/stdio.h

Comme on peut le voir, les SDK sont désormais divisés en MACOSX10.14 et 10.15 contrairement à Mojave.

[~ # ~] tldr [~ # ~]

Donc, ce sont mes dossiers SDK sur Catalina:

<img width="208" alt="image" src="https://user-images.githubusercontent.com/31866965/67324292-e49a1e00-f513-11e9-997e-9c49e7badbe5.png">

  1. Renommer MacOSX.sdk à MacOSX_orig.sdk
  2. Clic droit sur MacOSX10.14.sdk
  3. Dupliquer
  4. Renommez le dossier en double en MacOSX.sdk

La structure de votre dossier devrait maintenant ressembler à ceci:

<img width="195" alt="image" src="https://user-images.githubusercontent.com/31866965/67318914-74d46500-f50c-11e9-879d-ef0cd3e458cc.png">

Comme cela, nous utilisons essentiellement le sdk OSX de la version précédente comme sysroot. J'espère que cela t'aides.

0
rrz0

Je ne sais pas si cela est considéré comme un commentaire ou au moins une réponse temporaire, mais je m'abstiendrai d'essayer de résoudre tout problème de compatibilité de Catalina avec Anaconda pour l'instant. Voir ce problème GitHub .

0
Sean Wangnick