2017-09-24 3 views
7

Je suis nouveau dans le développement Python et essaie d'utiliser pipenv. J'ai couru la commande pip install pipenv, qui a couru avec succès:Pipenv: Commande introuvable

... 
Successfully built pipenv pathlib shutilwhich pythonz-bd virtualenv-clone 
Installing collected packages: virtualenv, pathlib, shutilwhich, backports.shutil-get-terminal-size, pythonz-bd, virtualenv-clone, pew, first, six, click, pip-tools, certifi, chardet, idna, urllib3, requests, pipenv 
... 

Cependant, quand je lance la commande pipenv install dans un nouveau répertoire racine du projet que je reçois le message suivant: -bash: pipenv: command not found. Je soupçonne que je pourrais devoir modifier mon .bashrc, mais je ne suis pas sûr de ce qu'il faut ajouter au fichier ou si une modification est même nécessaire.

+0

Vérifiez '/ usr/local/bin/pipenv' - est-ce là? Est-ce que '/ usr/local/bin' est dans' $ PATH'? – phd

+1

Même problème ici: pipenv construit avec succès mais pas de dossier pipenv dans/usr/local/bin. – aDone

+0

Est-ce que vous installez 'pipenv' globalement? – dethos

Répondre

8

Cela se produit parce que vous ne l'installez pas globalement (à l'échelle du système). Pour qu'il soit disponible dans votre path vous devez l'installer à l'aide sudo, comme ceci:

$sudo pip install pipenv 
+5

pour les copier-et-coller là-bas, cette commande est habituellement exécutée comme 'sudo -H pip install -U pipenv' (par exemple sur ubuntu), en installant' pipenv' dans '/ usr/local/bin'. L'alternative est une installation de l'utilisateur, par exemple, '$ pip install pipenv', qui est la même que' $ pip install --user pipenv', qui installe les choses dans '$ HOME/.local/...', nécessitant le ' PATH' à modifier comme dans l'autre réponse, https://stackoverflow.com/a/47111756/127971 – michael

15

Si vous avez fait une installation d'utilisateur, vous aurez besoin d'ajouter le bon dossier à votre variable PATH.

PYTHON_BIN_PATH="$(python3 -m site --user-base)/bin" 
PATH="$PATH:$PYTHON_BIN_PATH" 

Voir pipenv's installation instructions

+0

Ceci était utile, car j'avais besoin de lancer 'pipenv run', et les instructions d'installation me l'ont dit. – eksortso

7

Ce qu'il fixe pour moi:

sudo -H pip install -U pipenv 
+1

Oui! son résolu le problème –

+1

A fonctionné parfaitement! Par chance, savez-vous ce que signifient ces commandes (-H et -U)? – Babbz77

+0

@ Babbz77 L'option -H (HOME) pour sudo demande que la politique de sécurité définisse la variable d'environnement HOME sur le répertoire de base de l'utilisateur cible (racine par défaut) tel que spécifié par la base de données de mots de passe. L'option -U pour l'installation pip met à niveau tous les packages spécifiés vers la dernière version disponible. Le traitement des dépendances dépend de la mise à niveau - stratégie utilisée. –

0

Vous pouvez envisager d'installer pipenv via pipsi.

curl https://raw.githubusercontent.com/mitsuhiko/pipsi/master/get -pipsi.py | python3 
pipsi install pew 
pipsi install pipenv 

Malheureusement, il y a quelques problèmes avec macOS + python3 au moment de l'écriture, voir 1, 2. Dans mon cas, j'ai dû changer le bashprompt à #!/Users/einselbst/.local/venvs/pipsi/bin/python