Eu instalei python3-virtualenv
no Lubuntu 15.1 usando o pacote oficial do Ubuntu apt-get install python3-virtualenv
. A documentação oficial indica que um simples virtualenv .
no diretório do meu projeto deve ser suficiente para criar o venv. Isso não faz nada, porque which virtualenv
não faz nada. (Nada de which python-virtualenv
e which python3-virtualenv
também).
As informações do pacote, uma vez instaladas, /usr/lib/python3/dist-packages/virtualenv.py
indicam que foram instaladas , portanto, eu as invoco em python3. Isso me dá o seguinte:
$ python3 /usr/lib/python3/dist-packages/virtualenv.py .
Running virtualenv with interpreter /usr/bin/python2
New python executable in ./bin/python2
Also creating executable in ./bin/python
Installing setuptools, pip...done.
Sim, quando olho, tudo em ./bin é python2. O python3-virtualenv do ubuntu é um pacote fictício para python2?
A documentação oficial do python diz que use um pacote diferente: python3-venv . Isso parece funcionar quando eu pyvenv .
, com coisas python3 no ./bin
diretório
Como posso criar com êxito um virtualenv do Python 3?
fonte
Respostas:
venv
é um script de conveniência para criar envs virtuais, mas não substitui completamente tudo o quevirtualenv
pode fazer. Usar qualquer um é bom para a maioria dos casos.virtualenv
não é obsoleto.python3 -m venv
funciona após a instalaçãopython3-venv
porque o Debian retira alguns scripts do pacote base do Python.python3-virtualenv
não coloca ovirtualenv
script no seu caminho por algum motivo, mas opython-virtualenv
faz e funcionará bem para qualquer versão.Não é importante para qual versão
virtualenv
está instalada, pode produzir envs para qualquer versão instalada passando-p pythonX
(onde X é a versão).venv
, sendo mais simples, criará apenas envs da versão da qual ela é executada e está disponível apenas desde o 3.3.fonte