2014-11-03 3 views
0

Я использую Paramiko (который зависит от PyCrypto) от Windows в виртуальной среде.pycrypto с несколькими пользователями в виртуальной среде

Потому что я на Windows, я не имею C компилятор по умолчанию, так что я получил окна исполняемым от XXX, и установил его с помощью:

workon myenv 
easy_install pycrypto-2.6.win32-py2.7.exe 
python myscript.py 

И все работало для меня.

Теперь мой коллега (Steve) хотел бы использовать ту же самую программу, так что он делает:

workon myenv 
python myscript.py 

и он терпит неудачу с «ImportError: нет модуля с именем Crypto». Что странно. Что странно, так это если Steve easy_installs модуль PyCrypto, он может использовать его, , но я не могу. Кажется, что библиотека работает для человека, который его установил.

Любая идея, что мне не хватает?

ответ

0

Вы используете virtualenvwrapper, который по умолчанию создает каталог virtualenv в .virtualenvs. ([WORKON_HOME] [1])

Домашние каталоги пользователей не являются общедоступными. Таким образом, другой пользователь не может использовать ваш virtualenv.

Сделайте virtualenv в каталоге, к которому может обратиться ваш друг.

virtualenv /some/shared/virtualenv-dir 

И пусть другой пользователя активировать его:

/some/shared/virtualenv-dir/activate 

Если вы хотите использовать virtualenvwrapper, вы и другие пользователи должны установить WORKON_HOME переменные окружения в общем каталог. (Не уверен, что это также относится к версии win32 версии virtualenvwrapper, которую вы используете)

+0

хорошее мышление (я забыл, что мы используем virtualenvwrapper). К сожалению, у нас обоих есть WORKON_HOME = c: \ python-envs в нашей среде. У меня также был Steve прямо в директорию скриптов и «активировать», но у нас такая же проблема. –

Смежные вопросы