Вопрос по python – Установка пакета / инструмента python пользователем без прав root

6

(1) Мне нужно установить один пакет Python (HTSeq), но у меня нет привилегий root.

Пакету нужен Python 2.4 или последняя версия. У нас есть Python 2.3 на нашем кластере.

Таким образом, я установил python 2.7 в один локальный каталог, используя

<code>./configure --prefix=/home/amit/tools/localpython 
make 
make install
</code>

(2) Пакет также требует numpy: поэтому я также установил его в свой локальный каталог, используя:

<code>/home/amit/tools/localpython/bin/python2.7 setup.py install --home=/home/amit/tools/localnumpy 
</code>

и готово

<code>>>> sys.path.append("/home/amit/tools/localnumpy/lib/")
</code>

(3) Я скачал tar-файл HTSeq (который я хочу скачать) и запустил

<code>/home/amit/tools/localpython/bin/python2.7 setup.py install --home=/home/amit/tools/localhtseq
</code>

выдает следующую ошибку:

<code>Could not import 'setuptools',
falling back to 'distutils'.
Setup script for HTSeq: Failed to import 'numpy'.
Please install numpy and then try again to install HTSeq.
</code>

Пожалуйста, дайте мне подсказку о том, как с этим справиться

Заранее спасиб

Ваш Ответ

2   ответа
7

необходимое для установки этого пакета.

Один из вариантов - использовать virtualenv для создания среды Python. Это может быть сделано везде и принадлежит пользователю, который его создает.

Для установки virtualenv без прав администратора (от этот ответ):

Загрузите tar.gz последней версии virtualenv. Распакуйте его. Вам даже не нужно его устанавливать, просто запустите virtualenv.py, например:

wget http://pypi.python.org/packages/source/v/virtualenv/virtualenv-1.7.1.2.tar.gz
tar -xzf virtualenv-1.7.1.2.tar.gz
/home/amit/tools/localpython/bin/python2.7 virtualenv-1.7.1.2/virtualenv.py env

env/bin/pip install HTSeq
env/bin/pip install numpy

Теперь запустите ваш скрипт, используя двоичный файл python в виртуальной среде:

env/bin/python myscript.py
Спасибо Джасперу Ван ден Бошу, я попробую это (после небольшого поиска в Google), используя virtualenv, так как я не знаю об этом, если у меня возникнет какая-либо проблема, я дам тебе знать bioinformatician
Хорошо, я добавил несколько команд, дайте мне знать, как это работает! Jasper van den Bosch
Уважаемый Джаспер, он работает ... Я установил оба пакета и теперь импортировал HTseq в текущей сессии Python 2.7 на терминале. Благодарност bioinformatician
Ты можешь отметить вопрос как ответивший? Jasper van den Bosch
Если вы собираетесь использовать virtualenv (что определенно рекомендуется), вам следует заглянуть в Virtualenvwrapper, это делает использование множества virtualenvs простым. quodlibetor
2

Setuptools (необходимо запустить setup.py вашего HTSeq).

Скачать источники Tar.gz setuptools-0.6c11.tar.gz, распакуйте его, а затем выполните шаги, аналогичные установленному на python2.7, но в папке, куда вы распаковали файлы setuptools:

./configure --prefix=/home/amit/tools/localpython 
make 
make install

2) Когда вы установите setuptools,easy_install исполняемый файл появится вpython2.7/scripts/ папка. Вы можете использовать его для простой установки пакетов:

/home/amit/tools/localpython/bin/python2.7/scripts/easy_install HTSeq

it автоматически найдет пакет и загрузит и установит его для вас вместе со всеми зависимостями.

Лучше установить setuptools из источников (используйтеtar.gz link), затем сделайте все как вы установили python2.7 ./configure --prefix=..., make, make install. Я обновил свой ответ с помощью этих шагов. Serge S.
Спасибо SergeanT, но извините, что беспокою вас еще раз - когда я набираю python на терминале, он автоматически берет старую версию python (2.3). Я должен использовать Python 2.7. поэтому, когда я запускаю sh sh setuptools-0.6c11-py2.7.egg, выдает ошибку: setuptools-0.6c11-py2.7.egg: строка 3: exec: python2.7: не найдено bioinformatician

Похожие вопросы