5
votes

pyenv n'a pas réussi à télécharger une version existante de Python

J'ai récemment installé pyenv et tenté d'installer une version de python, d'après un article de blog . J'ai exécuté certaines commandes, mais j'ai rencontré une erreur et je ne sais pas comment résoudre.

$ pyenv install 3.6.6
python-build: use openssl from homebrew
python-build: use readline from homebrew
Downloading Python-3.6.6.tar.xz...
-> https://www.python.org/ftp/python/3.6.6/Python-3.6.6.tar.xz
error: failed to download Python-3.6.6.tar.xz

BUILD FAILED (OS X 10.12.6 using python-build 20180424)


2 commentaires

Moi aussi, je suis confronté au même problème. Le terminal ne dit rien d'autre


Je n'ai pas découvert pourquoi cela se produit. Mais j'ai réussi à contourner le problème en téléchargeant le fichier manuellement (je l'ai fait avec wget) et en le plaçant dans ~ / .pyenv / cache /. Ensuite, exécutez à nouveau la commande d'installation.


4 Réponses :


-1
votes

semble avoir été une erreur réseau pour moi - je suis passé à un réseau plus rapide après avoir confirmé que le fichier était toujours disponible et il a été installé sans problème


0 commentaires

4
votes

L'erreur peut avoir plusieurs raisons, mais vous avez la possibilité d'utiliser l'indicateur

PATH="/usr/local/opt/curl/bin:$PATH"

pour obtenir des informations plus précises.

python-build: use openssl@1.1 from homebrew
python-build: use readline from homebrew
/var/folders/_z/nn_xcbvd3_15l_njz9j9c85c0000gn/T/python-build.20190717020159.52739 ~
Downloading Python-3.5.7.tar.xz...
-> https://www.python.org/ftp/python/3.5.7/Python-3.5.7.tar.xz
dyld: Library not loaded: /usr/local/opt/libssh2/lib/libssh2.1.dylib
  Referenced from: /usr/local/bin/curl
  Reason: image not found
/Users/johannes/.pyenv/plugins/python-build/bin/python-build: line 368: 53069 
Abort trap: 6           curl -q -o "${2:--}" -sSLf ${CURL_OPTS} "$1"
error: failed to download Python-3.5.7.tar.xz

BUILD FAILED (OS X 10.14.5 using python-build 1.2.13)

Dans mon cas, l'erreur était curl installée via homebrew mais le chemin pointait vers l'installation native:

pyenv install <your version> --verbose

Le correctif était d'ajouter

--verbose


0 commentaires

10
votes

J'ai eu la même erreur. Après avoir creusé le code source de pyenv, j'ai trouvé la cause racine.

Dans / usr / local / bin / python-build , il détecterait un client http pour télécharger le fichier tar. Le premier choix est aria2c , puis curl , puis wget.

Vérifiez donc si aria2c , curl et wget peuvent fonctionner correctement.

> brew uninstall aria2
> brew install aria2

Pour mon problème, il y a un problème avec mon Commande aria2c . J'ai déjà mis à jour ma bibliothèque openssl, puis toutes les commandes associées ont obtenu une erreur lors de leur exécution.

> aria2c                                                                                                                                              55.5s
dyld: Library not loaded: /usr/local/opt/openssl/lib/libssl.1.0.0.dylib
  Referenced from: /usr/local/opt/libssh2/lib/libssh2.1.dylib

Après avoir réinstallé aria2c et les bibliothèques associées, le problème est résolu. / p>

Étapes pour réinstaller aria2c:

detect_http_client() {
  local client
  for client in aria2c curl wget; do
    if type "$client" &>/dev/null; then
      echo "$client"
      return
    fi
  done
  echo "error: please install \`aria2c\`, \`curl\`, or \`wget\` and try again" >&2
  return 1
}


2 commentaires

Dans mon cas, la mise à niveau de la bière aria2 #not aria2c a fonctionné pour moi, merci!


@BigRich Oui, vous avez raison, le nom du paquet de bière est aria2 . Étapes ajoutées dans la réponse maintenant.



1
votes

Cela résout mon problème après avoir réinstallé aria2 avec:

brew uninstall aria2' then 'brew install aria2


0 commentaires