virtualenv

60 views
Skip to first unread message

Juliano Fischer Naves

unread,
Jun 18, 2012, 4:35:40 PM6/18/12
to django...@googlegroups.com
Olá pessoal

instalei o virtualenv através do pip: 

sudo pip install virtualenv 

criei um enviroment: 

sudo virtualenv environment

acessei o virtualenv e ativei-o

cd environment
bin/activate

instalei o django usando pip:

sudo bin/pip install django==1.3.1

porém, quando tento importar o django, ele não é encontrado.

python2.7
import django
[erro]

Quando utilizei o easy_install pra instalar o django, consegui importar.
bin/easy_install "django==1.3.1"

Alguém sabe qual é o problema?

Luciano Ramalho

unread,
Jun 18, 2012, 4:41:18 PM6/18/12
to django...@googlegroups.com
2012/6/18 Juliano Fischer Naves <juliano...@gmail.com>:
Normalmente o virtualenv não coloca o número da versão no executável
do Python, então ao rodar python2.7 vc deve estar acessando um python
que não é o do virtualenv. Tire o número da versão e nos conte o que
deu.

Para diagnosticar esse tipo de problema em qq. unix, existe o comando which:

$ which python
/usr/bin/python


[ ]s
Luciano

--
Luciano Ramalho
NOVO TWITTER: @ramalhoorg

Autor e instrutor dos cursos:
* Academia Python na Globalcode
--> http://python.globalcode.com.br

* Python para quem sabe Python nas Oficinas Turing
--> http://turing.com.br/ppqsp

Tarsis Azevedo

unread,
Jun 18, 2012, 4:52:44 PM6/18/12
to django...@googlegroups.com
Pra entender melhor como funciona o pip, virtualenv e virtualenvwrapper


Abraços,
Tarsis Figueredo Azevedo.
-------------------
Celular: (22) 81244668


2012/6/18 Luciano Ramalho <luc...@ramalho.org>

--
Django Brasil em Google Groups <http://groups.google.com.br/group/django-brasil>
Associe-se à Python Brasil e suporte nossa comunidade! <http://associacao.python.org.br/>

Douglas Miranda

unread,
Jun 18, 2012, 5:05:19 PM6/18/12
to django...@googlegroups.com
houve uma vez que eu precisei usar o pip-2.7 p/ instalar um módulo, não foi o django, mas acontecia que quando eu instalava ele não ia para o python 2.7, daí instalei, por exemplo, assim: pip-2.7 install django

Isso foi introduzido desde a versão 0.8, como pode ver em: http://pypi.python.org/pypi/pip

Luciano Ramalho

unread,
Jun 18, 2012, 5:09:00 PM6/18/12
to django...@googlegroups.com
2012/6/18 Douglas Miranda <douglasmi...@gmail.com>:
> houve uma vez que eu precisei usar o pip-2.7 p/ instalar um módulo, não foi
> o django, mas acontecia que quando eu instalava ele não ia para o python
> 2.7, daí instalei, por exemplo, assim: pip-2.7 install django
>
> Isso foi introduzido desde a versão 0.8, como pode ver
> em: http://pypi.python.org/pypi/pip

Legal, Douglas, mas não tem nada a ver com o caso que estamos
discutindo. Eu falei para o Juliano não usar o número da versão ao
rodar o python, e não ao rodar o pip.

Douglas Miranda

unread,
Jun 18, 2012, 5:19:07 PM6/18/12
to django...@googlegroups.com
ahh sim saquei, eu fiquei meio confuso também, foi algo meio parecido que aconteceu comigo, mas nunca local, só em produção, na webfaction mais especificamente.

Flavia Missi

unread,
Jun 18, 2012, 5:19:23 PM6/18/12
to django...@googlegroups.com
Você não precisa usar `sudo` para instalar as coisas quando seu virtualenv está ativado, nem precisa passar o path do pip ou do python também, tente rodar a instalação do django sem sudo e sem usar o path do pip.

[]'s

2012/6/18 Luciano Ramalho <luc...@ramalho.org>
--
Django Brasil em Google Groups <http://groups.google.com.br/group/django-brasil>
Associe-se à Python Brasil e suporte nossa comunidade! <http://associacao.python.org.br/>



--
Flavia

Luciano Ramalho

unread,
Jun 18, 2012, 6:15:57 PM6/18/12
to django...@googlegroups.com
2012/6/18 Flavia Missi <flavi...@gmail.com>:
> Você não precisa usar `sudo` para instalar as coisas quando seu virtualenv
> está ativado, nem precisa passar o path do pip ou do python também, tente
> rodar a instalação do django sem sudo e sem usar o path do pip.

Sim, mandou muito bem, Flavia, eu não tinha reparado que ele estava
usando sudo desta forma.

Realmente, pessoal, uma das grandes vantagens de usar o virtualenv é
não precisar usar sudo para instalar pacotes Python depois que o
virtualenv está ativado. E isso facilita muito o deployment também.
Aliás, usar o sudo neste caso só vai atrapalhar.

Juliano Fischer Naves

unread,
Jun 19, 2012, 8:26:49 AM6/19/12
to django...@googlegroups.com
Olá pessoal,
para criar o environment, eu tenho que utilizar:

sudo virtualenv envi-test

se eu não utilizar sudo aparece o seguinte erro: 
IOError: [Errno 13] Permission denied: '/usr/lib/python2.7/site-packages/django_cms-2.2-py2.7.egg-info/top_level.txt

Ao tentar instalar o django através do pip, sem utilizar sudo, deparo-me com o seguinte erro:

Downloading/unpacking django==1.3.1
Exception:
Traceback (most recent call last):
  File "/home/juliano/Documentos/Python/envi-test/lib/python2.7/site-packages/pip-1.1-py2.7.egg/pip/basecommand.py", line 104, in main
    status = self.run(options, args)
  File "/home/juliano/Documentos/Python/envi-test/lib/python2.7/site-packages/pip-1.1-py2.7.egg/pip/commands/install.py", line 245, in run
    requirement_set.prepare_files(finder, force_root_egg_info=self.bundle, bundle=self.bundle)
  File "/home/juliano/Documentos/Python/envi-test/lib/python2.7/site-packages/pip-1.1-py2.7.egg/pip/req.py", line 971, in prepare_files
    location = req_to_install.build_location(self.build_dir, not self.is_download)
  File "/home/juliano/Documentos/Python/envi-test/lib/python2.7/site-packages/pip-1.1-py2.7.egg/pip/req.py", line 153, in build_location
    _make_build_dir(build_dir)
  File "/home/juliano/Documentos/Python/envi-test/lib/python2.7/site-packages/pip-1.1-py2.7.egg/pip/req.py", line 1225, in _make_build_dir
    os.makedirs(build_dir)
  File "/home/juliano/Documentos/Python/envi-test/lib/python2.7/os.py", line 157, in makedirs
    mkdir(name, mode)
OSError: [Errno 13] Permission denied: '/home/juliano/Documentos/Python/envi-test/build'

Quando tento instalar o django, utilizando sudo, acontece o seguinte:

sudo pip install django==1.3.1
Requirement already satisfied (use --upgrade to upgrade): django==1.3.1 in /usr/lib/python2.7/site-packages
Cleaning up...

e quando tento importar o django no interpretador python

python
>>>import django

ImportError: No module named django


A saída do comando "which python" é:
~/Documentos/Python/envi-test/bin/python

A saída do comando "which  python2.7" é:
~/Documentos/Python/envi-test/bin/python2.7


Conto com a ajuda de vocês.

Leonardo Bragatti

unread,
Jun 19, 2012, 8:47:55 AM6/19/12
to django...@googlegroups.com
Que eu saiba, realmente não é necessário rodar com o sudo

Pelo visto, quando voce ta criando o virtualenv, ele ta tentando acessar algo do seu ambiente

Tente criar o virtualenv dessa forma:

virtualenv envi-test --no-site-packages --distribute

Eu nunca tive problemas usando dessa forma e nunca utilizei como sudo para realizar qualquer operação

Abraços,
Leonardo



2012/6/19 Juliano Fischer Naves <juliano...@gmail.com>
--

Juliano Fischer Naves

unread,
Jun 19, 2012, 9:54:51 AM6/19/12
to django...@googlegroups.com
Fala Leonardo,
obrigado pela resposta, tentei criar da maneira que você me instruiu, porém sem sucesso. Continua dando o mesmo erro de permissão.

Flavia Missi

unread,
Jun 19, 2012, 10:10:58 AM6/19/12
to django...@googlegroups.com
Tu tem permissão de escrita nesse diretório:  /home/juliano/Documentos/Python/envi-test/build ?

Quando tu usa sudo pra rodar o pip install, ele instala no python do sistema, por isso que do virtualenv tu não consegue acessar ele.
--
Flavia

Daniel Antoniete

unread,
Jun 19, 2012, 10:28:20 AM6/19/12
to django...@googlegroups.com
Acabo de configurar meu django1.4 para fazer um passo a passo.

sudo apt-get install python-setuptools
sudo apt-get install subversion
sudo apt-get install mysql-server
sudo easy_install virtualenv
sudo apt-get install python-mysqldb

mkdir Sites
cd Sites
virtualenv dj14 --no-site-package
source dj14/bin/activate
svn co http://code.djangoproject.com/svn/django/tags/releases/1.4
python setup.py install


Funciona perfeitamente meu caro, abraços.



(dj14)antoniete@antoniete-VirtualBox:~/Sites/envs$ python
Python 2.7.3 (default, Apr 20 2012, 22:44:07)
[GCC 4.6.3] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import django
>>> django.VERSION
(1, 4, 0, 'final', 0)
>>>















Instalei o MySQLdb pro ambiente fora do env.
sudo apt-get install python-mysqldb

Em 19 de junho de 2012 10:54, Juliano Fischer Naves
<juliano...@gmail.com> escreveu:

Leonardo Bragatti

unread,
Jun 20, 2012, 3:31:06 PM6/20/12
to django...@googlegroups.com
Daniel,
Dessa forma que você fez, apos ativar o ambiente criado, se você desse um pip install django funcionaria tambem
Acho mais simples do que baixar a versão que esta no repositorio deles

Abraços,
Leonardo



2012/6/19 Daniel Antoniete <daniela...@gmail.com>

Daniel Antoniete

unread,
Jun 20, 2012, 3:41:40 PM6/20/12
to django...@googlegroups.com
Cara esta eh a forma que utilizo e demonstrei um passo a passo ao nosso amigo para ter um norte do que pode ter acontecido.

Crie um passo a passo a fim de ajudar-lo, a instalação na minha maquina funciona!!!!

Abraços

Leonardo Bragatti

unread,
Jun 20, 2012, 4:27:01 PM6/20/12
to django...@googlegroups.com
Juliano,
Tente utilizar dessa forma aqui:

sudo apt-get install python-virtualenv
virtualenv enviroment
source enviroment/bin/activate
pip install djando

Abraços,
Leonardo



2012/6/20 Daniel Antoniete <daniela...@gmail.com>
Reply all
Reply to author
Forward
0 new messages