virtualenv LookupError: no codec search functions registered: can't find encoding

virtualenv LookupError: no codec search functions registered: can't find encoding

我想在 virtualenv 中启动 django 项目,但是当我尝试在目录终端中创建 virtualenv 时显示错误:

~$ cd trydjango18
:~/trydjango18$ virtualenv .
Traceback (most recent call last):
  File "/usr/local/bin/virtualenv", line 7, in <module>
    from virtualenv import main
  File "/usr/local/lib/python2.7/dist-packages/virtualenv.py", line 2013, in <module>
    """)
  File "/usr/local/lib/python2.7/dist-packages/virtualenv.py", line 1867, in convert
    b = base64.b64decode(s.encode('ascii'))
LookupError: no codec search functions registered: can't find encoding

我已经解决了问题

  1. 我从另一台计算机复制并粘贴 'encodings' 文件夹(它在 usr/lib/python2.7/encodings)

  2. 我通过这个命令安装 pip - sudo apt-get install python-pip python-dev build-essential;

但是当我尝试 运行 sudo pip install virtualenv virtualenvwrapper;

终端显示另一个错误:导入错误:无法导入名称 HTTPSHandler

  1. 经过一些研究,我了解到 ssl 可能被遗漏了,我需要 运行

sudo apt-get 安装 libssl-dev

sudo apt-get --reinstall install libpython2.7-stdlib

  1. 那我再说一遍 sudo pip install virtualenv virtualenvwrapper

  2. 万事大吉,终于 sudo pip install --upgrade pip

现在 virtualenv 做得很好!