J'utilise python 2.7 + version 1.10.1 virtuelle pour exécuter des projets myproject. En raison de la nécessité de certains projets, je dois travailler avec d'autres versions de python (Python 3.5) et Django 1.9. Pour cela, j’ai installé python dans mon répertoire utilisateur. De plus, j’ai téléchargé et installé virtualenv (version - 15.1.) dans mon répertoire utilisateur. en essayant de créer env virtuel, je reçois l'erreur ci-dessous
python virtualenv/virtualenv.py myproject
Using base prefix '/home/myuser/python3'
New python executable in /home/mount/myuser/project_python3/myproject/bin/python
ERROR: The executable /home/mount/myuser/project_python3/myproject/bin/python is not functioning
ERROR: It thinks sys.prefix is '/home/myuser/python3' (should be '/home/mount/myuser/project_python3/myproject')
ERROR: virtualenv is not compatible with this system or executable
Quelqu'un peut-il dire ce que je fais mal avec cela
Dans Python 3.6+, le module pyvenv est obsolète. Utilisez plutôt la ligne suivante:
python3 -m venv <myenvname>
C’est le moyen recommandé de créer des environnements virtuels par la communauté Python.
Python est déjà livré avec son "virtualenv" intégré appelé venv
depuis la version 3.3. Vous n'avez plus besoin d'installer ni de télécharger les scripts virtualenv
pour Python 3.3+.
https://docs.python.org/3/library/venv.html
Vérifiez que votre installation a fourni la commande pyvenv
qui devrait permettre de créer le "virtualenv". Les arguments sont similaires au projet virtualenv classique.
$ pyvenv --help
usage: venv [-h] [--system-site-packages] [--symlinks | --copies] [--clear]
[--upgrade] [--without-pip]
ENV_DIR [ENV_DIR ...]
Creates virtual Python environments in one or more target directories.
positional arguments:
ENV_DIR A directory to create the environment in.
optional arguments:
-h, --help show this help message and exit
--system-site-packages
Give the virtual environment access to the system
site-packages dir.
--symlinks Try to use symlinks rather than copies, when symlinks
are not the default for the platform.
--copies Try to use copies rather than symlinks, even when
symlinks are the default for the platform.
--clear Delete the contents of the environment directory if it
already exists, before environment creation.
--upgrade Upgrade the environment directory to use this version
of Python, assuming Python has been upgraded in-place.
--without-pip Skips installing or upgrading pip in the virtual
environment (pip is bootstrapped by default)
Once an environment has been created, you may wish to activate it, e.g. by
sourcing an activate script in its bin directory.
Pour créer un env virtuel
virtualenv -p python3 venv_name
Cela créera un nouvel python exécutable dans le répertoire baseDirectory/bin/python3
Comment activer Venv nouvellement créé:
cd baseDirectory/bin/
source activate
Désactiver le nouveau venv
deactivate
Je l'installe à l'aide de la commande (pour Python 3.x),
$ python3 -m venv env