web-dev-qa-db-fra.com

Comment activer virtualenv?

Je suis passé par la recherche et ai essayé diverses alternatives sans succès et y ai passé plusieurs jours - me rendant fou.

Exécution sous Red Hat Linux avec Python 2.5.2 A commencé à utiliser Virtualenv le plus récent, mais ne pouvait l'activer, j'ai trouvé quelque part une suggestion suggérant une version antérieure nécessaire. J'ai donc utilisé Virtualenv 1.6.4 car cela devrait fonctionner avec Python. 2.6.

Il semble installer l'environnement virtuel ok

[necrailk@server6 ~]$ python virtualenv-1.6.4/virtualenv.py virtual
New python executable in virtual/bin/python
Installing setuptools............done.
Installing pip...............done.

L'environnement a l'air bien

[necrailk@server6 ~]$ cd virtual
[necrailk@server6 ~/virtual]$ dir
bin  include  lib

Essayer d'activer

[necrailk@server6 ~/virtual]$ . bin/activate
/bin/.: Permission denied.

Chmod vérifié

[necrailk@server6 ~/virtual]$ cd bin
[necrailk@server6 bin]$ ls -l
total 3160
-rw-r--r--    1 necrailk biz12        2130 Jan 30 11:38 activate
-rw-r--r--    1 necrailk biz12        1050 Jan 30 11:38 activate.csh
-rw-r--r--    1 necrailk biz12        2869 Jan 30 11:38 activate.fish
-rw-r--r-

Problème, alors je l'ai changé

[necrailk@server6 bin]$ ls -l
total 3160
-rwxr--r--    1 necrailk biz12        2130 Jan 30 11:38 activate
-rw-r--r--    1 necrailk biz12        1050 Jan 30 11:38 activate.csh
-rw-r--r--    1 necrailk biz12        2869 Jan 30 11:38 activate.fish
-rw-r--r--    1 necrailk biz12        1005 Jan 30 11:38 activate_this.py
-rwxr-xr-x    1 necrailk biz

Essayez à nouveau activate

[necrailk@server6 ~/virtual]$ . bin/activate
/bin/.: Permission denied.

Toujours pas de joie ...

191
larry

Voici mon flux de travail après la création d'un dossier et cd 'ing dans celui-ci:

$ virtualenv venv --distribute
New python executable in venv/bin/python
Installing distribute.........done.
Installing pip................done.
$ source venv/bin/activate
(venv)$ python
269
topherjaynes

Vous avez oublié de faire source bin/activate où source est un nom exécutable. Frappez-moi pour la première fois également, il est facile de penser que ce manuel dit "exécutez ceci à partir de la racine du dossier d'environnement".

Pas besoin de rendre activate exécutable via chmod.

83
kaboom

Tu peux faire

source ./python_env/bin/activate

ou simplement aller dans le répertoire

cd /python_env/bin/

puis

source ./activate

Bonne chance.

59
cquptzzq

Cd dans le chemin d’environnement, allez dans le dossier bin. À ce stade, lorsque vous utilisez la commande ls, vous devriez voir le fichier "activer".

maintenant tapez

source activate
24
Reihan_amn

Allez dans le répertoire du projet. Dans mon cas, microblog est le répertoire du projet flask et, dans le répertoire microblog, des dossiers app et venv. puis exécutez la commande ci-dessous, c’est celui qui m’a fonctionné sous Ubuntu.

source venv/bin/activate

enter image description here

19
GNK

Le problème est la commande /bin/.. C'est vraiment bizarre, depuis. devrait toujours être un lien vers le répertoire dans lequel il se trouve. (Honnêtement, à moins que . ne soit pas un alias ou une fonction étrange, je ne vois même pas comment cela est possible.) Il est également un peu inhabituel que votre Shell ne possède pas un .intégré pour source .

Une solution rapide consisterait simplement à exécuter virtualenv dans un autre shell. (Un deuxième avantage évident est qu'au lieu de devoir deactivate, vous pouvez simplement exit.)

/bin/bash --rcfile bin/activate

Si votre shell le supporte, vous pouvez également avoir la commande non standard source, qui devrait faire la même chose que ., mais peut ne pas exister. (Tout ceci dit, vous devriez essayer de comprendre pourquoi votre environnement est étrange ou il vous causera de la douleur à l'avenir.)

En passant, vous n'avez pas besoin de chmod +x ces fichiers. Les fichiers ne doivent être exécutables que si vous voulez les exécuter directement . Dans ce cas, vous essayez de les lancer à partir de ., afin qu’ils n’en aient pas besoin.

16
kojiro

$ mkdir <YOURPROJECT> Créer un nouveau projet

$ cd <YOURPROJECT> Changer le répertoire pour ce projet

$ virtualenv <NEWVIRTUALENV> Création d'un nouveau serveur virtuel

$ source <NEWVIRTUALENV>/bin/activate Activer ce nouveau virtualenv

15
rust

au lieu de ./activate

utiliser source activate

See this screenshot

12
Joy Mukherjee

Pour Windows, vous pouvez effectuer les opérations suivantes:

POUR créer l’env virtuel en tant que: virtualenv envName –python = python.exe (si non, créer une variable d’environnement)

Pour activer l’env virtuel:>\chemin\to\envName\Scripts\activate

Pour désactiver l’env virtuel:>\chemin\to\env\scripts\deactivate

Cela fonctionne très bien sur la nouvelle version python.

7
susan097

Je recommanderais également virtualenvwrapper. Cela fonctionne à merveille pour moi et j'ai toujours des problèmes d'activation. http://virtualenvwrapper.readthedocs.org/en/latest/

4
Erika

Créez votre propre environnement virtuel Python appelé <Your Env _name >:. Je lui ai donné VE.

git clone https://github.com/pypa/virtualenv.git
python virtualenv.py VE

Pour activer votre nouvel environnement virtuel, exécutez (notez que ce n'est pas ./ ici):

. VE/bin/activate

Exemple de sortie (Invite note modifiée):

(VE)c34299@a200dblr$

Une fois que votre environnement virtuel est défini, vous pouvez supprimer le repo Virtualenv.

3
Manas
source virtualen_name/bin/activate

code

3
Harish Kumawat

Sur Mac, changez Shell en BASH (notez que l’environnement virtuel ne fonctionne que dans Bash Shell)

[user@Host tools]$. venv/bin/activate 

.: Command not found.

[user@Host tools]$source venv/bin/activate

Badly placed ()'s.

[user@Host tools]$bash

bash-3.2$ source venv/bin/activate

(venv) bash-3.2$ 

Bingo, ça a fonctionné. Voir Invite modifiée.

Sur Ubuntu:

user@local_Host:~/tools$ source toolsenv/bin/activate

(toolsenv) user@local_Host~/tools$ 

Remarque: l'invite a changé

2
sunil_kumar_sahu

J'ai eu du mal à faire tourner source/bin/activate, puis j'ai réalisé que j'utilisais tcsh comme terminal Shell au lieu de bash. une fois que j'ai changé, j'ai pu activer venv.

2
Jason

1- ouvrez powershell et naviguez jusqu'au dossier de votre application 2- entrez votre dossier virtualenv ex: cd.\Venv\Scripts\3- virtualenv actif par type.\Activate

0
aly

Probablement un peu tard pour poster ma réponse ici, mais je vais quand même poster, ça pourrait avantager quelqu'un,

J'avais fait face au même problème,

La raison principale étant que j'ai créé virtualenv en tant qu'utilisateur "root", mais que plus tard, je tentais de l'activer avec un autre utilisateur.

chmod ne fonctionnera pas car vous n'êtes pas le propriétaire du fichier, vous pouvez donc utiliser chown (pour changer de propriétaire)

Par exemple :

Si vous avez créé votre virtualenv à/home/abc/ENV

Puis CD vers/home/abc

et exécutez la commande: chown -Rv [utilisateur à qui vous voulez changer de propriétaire] [dossier/nom de fichier dont le propriétaire doit être changé]

Dans cet exemple, les commandes seraient: chown -Rv abc ENV

Une fois la propriété modifiée, vous pouvez simplement exécuter source /ENV/bin/./activate et vous devriez pouvoir activer le virtualenv correctement.

0
Lokendra