2013-04-09 2 views
1

Я пытаюсь установить dropbox на своем университетском хосте, и для этого требуется модуль python docutils. Таким образом, после загрузки модуля и работает python install.py я получаю следующий результат:Установите модуль python на университетский компьютер

running install 
running build 
running build_py 
running build_scripts 
running build_data 
running install_lib 
creating /usr/local/lib/python2.7/dist-packages/docutils 
error: could not create '/usr/local/lib/python2.7/dist-packages/docutils': Read-only file system 

Не удивительно, на самом деле, я не могу делать какие-либо письма за пределами моей домашней директории. Мой вопрос: есть ли способ установить его в моей домашней папке?

Благодаря

+0

возможный дубликат [Как установить питон модули без корневого доступа?] (Http://stackoverflow.com/questions/7465445/how-to-install- python-modules-without-root-access) – geoffspear

ответ

3

С последней версией пипа, один из способов сделать это:

pip install --user project 
+0

Эй, я попробовал «pip install -t ./docutils docutils-0.10.tar.gz» - получил множество предупреждений, но также «Успешно установил docutils». При запуске dropbpx ./configure у меня такая же проблема - ot не распознает модуль. Может ли pip дать интерпретатору python знать, что модуль не включен локально, или я должен указать его при импорте? – Yotam

+0

'-t' требует места установки; '--user' должен помещать его где-то, что Python уже ищет модули (где это возможно). – geoffspear

+0

Итак, если я набираю флаг «--user ~/modules», я говорю python искать модули в «~/modules»? – Yotam

2

Лучшим способом обойти изменения уровня системы/дополнение при приобретении питона модулей заключается в использовании virtualenv и его обертка, чтобы сделать ее проще, virtualenvwrapper, вместе с пипсом. Возможно, они уже установлены? Попробуйте

$ mkvirtualenv dropboxEnv # or whatever you want to call it 
$ workon dropboxEnv  # to activate the virtual environment 

и/или

$ pip install docutils 

, если у вас нет пип вы можете сначала попробовать

$ easy_install pip 

AFAIK, virtualenv это единственный способ "установить" модуль в вашу домашнюю папку. Попытка установить virtualenv/virtualenvwrapper может быть хорошим вариантом. Если они еще не установлены, вы можете попытаться найти кого-то, кто установит их на вашем компьютере в системе, тогда вы сможете создавать любые виртуальные виртуальные машины и устанавливать любые модули, которые хотите в свою домашнюю папку.

+1

'virtualenv' - удобный, но не единственный способ установить модуль Python в вашу домашнюю папку. В другом ответе упоминается параметр конфигурации «--user», поддерживаемый Distutils и pip. Вы также можете использовать переменную enviornment 'PYTHONPATH' или динамически' sys.path'. –

+0

Nice. Не знал о теге --user. Благодарю. Я знаю о PYTHONPATH, но что вы подразумеваете под «вы также можете использовать переменную среды PYTHONPATH?» в этом сценарии? – samstav

+2

Вы можете установить модули Python в любой каталог, а затем установить «PTYHONPATH», чтобы добавить этот каталог в путь поиска, используемый Python при импорте модулей. Бывают случаи, когда это может быть более целесообразным, чем использование «virtualenv». Но для многих случаев использования 'virtualenv' проще. –

0

Если вы скачали версию попробовать этот

python setup.py install --user 
Смежные вопросы