virtualenvwrapper CentOS7

Я попытался настроить virtualenv с помощью virtualenvwrapper на CentOS 7 с помощью pip, и у меня возникла ошибка UnicodeDecode.

Точные шаги:

  • Установить CentOS7
  • Установите pip через get-pip.py
  • sudo pip установить virtualenv
  • sudo pip установить virtualenvwrapper
  • экспорт WORKON_HOME = $ HOME / .virtualenvs
  • источник /usr/local/bin/virtualenvwrapper.sh

когда я бегу mkvirtualenv test я получаю

 New python executable in test/bin/python
 Traceback (most recent call last):
 File "<string>", line 1, in <module>
 UnicodeDecodeError: 'ascii' codec can't decode byte 0xc2 in position 11 ordinal not in range(128)
 ERROR: The executable Blog/bin/python is not functioning
 ERROR: It thinks sys.prefix is u'/home/blaw/\xac./virtualenvs' (should be u'/home/blaw/\xac./virtualenvs/Blog')
 ERROR: virtualenv is not compatible with this system or executable

Что я делаю неправильно?


person KillerSnail    schedule 30.06.2015    source источник
comment
Можете ли вы использовать env для печати вашей среды и поиска каких-либо символов без ASCII?   -  person Klaus D.    schedule 30.06.2015


Ответы (2)


echo 'export WORKON_HOME=$HOME/.virtualenvs' >> ~/.bashrc

echo 'source /usr/bin/virtualenvwrapper.sh' >> ~/.bashrc

source ~/.bashrc

mkvirtualenv test

Это должно быть нормально.

person sxx    schedule 16.07.2015

Я нашел две странные строчки в вашем списке шагов:

  • экспорт WORKON_HOME = $ HOME / .virtualenvs
  • источник /usr/local/bin/virtualenvwrapper.sh

Означает ли это, что вы только что выполнили эти команды в своем клиенте?

На самом деле, что вам нужно сделать, это включить эти две строки в ваш файл .bashrc, как предполагает ответ sxx.

Итак, вместо того, чтобы повторять и добавлять эти строки, я отредактировал файл .bashrc с помощью vim (вы также можете использовать nano, если вам так проще). И вручную добавьте его в конец файла.

Я не уверен, что это лучше, но я добавил символ тильды (~) в переменную $ HOME:

export WORKON_HOME=~/.virtualenvs
source /usr/bin/virtualenvwrapper.sh

Если вы внимательно прочитаете, в centos7 сценарий virtualenvwrapper.sh находится в каталоге /usr/bin/, а НЕ в /usr/local/bin, как вы написали.

После того, как вы добавили эти строки, сохранили измененный .bashrc файл, и выйдите из редактора vim или nano, вы можете создать теперь каталог .virtualenvs, а затем источник файла .bashrc (своего рода перезапуск вашего bash cli с изменениями, которые вы только что внесли):

mkdir ~/.virtualenvs
source ~/.bashrc

Если все в порядке, вы должны увидеть, что virtualenvwrapper создаст несколько сценариев в каталоге .virtualenvs.

Чтобы проверить, работает ли ваш virtualenvwrapper, вы можете просто создать тестовую среду:

mkvirtualenv test

Команда выхода из среды - deactivate. Вы можете удалить свою тестовую среду с помощью rmvirtualenv test. Я надеюсь, что это помогает.

person f-spin    schedule 03.11.2015