#python #installation #virtualenv #pip #virtualenvwrapper
#python #установка #virtualenv #pip #virtualenvwrapper
Вопрос:
У меня есть программа на Python, которую я хочу установить в свой virtualenv — это zip-пакет, который мне нужно разархивировать, а затем запустить setup.py программа — но мой вопрос больше касается того, как перенести эти распакованные файлы в мой virtualenv, чтобы пакет был установлен в папку пакетов сайта virtualenv?
Я также могу установить его изнутри моего virtualenv с помощью pip install <package name>
, но по какой-то причине пакет, который загружает PIP, устарел.
Итак, кто-нибудь может рассказать мне несколько простых шагов для установки пакета вручную?
Пока у меня есть основные команды для загрузки Virtualenv:
-bash-3.2$ source ~/.bashrc
-bash-3.2$ workon test
(test)-bash-3.2$ //Now I'm working on my virtualenv, but where do I go after this??
Итак, имеет ли значение, куда я разархивирую пакет / программу python, или я должен сначала войти в virtualenv перед разархивированием? После того, как я загружу virtualenv и начну использовать его с помощью команды workon test, будет ли любой пакет python, который я устанавливаю, независимо от каталога, в котором я его нахожу, устанавливаться в папку site-packages соответствующего virtualenv?
Вариант 1 — распаковать программу python в /home / username / tmp, затем войти в my virtualenv, перейти к этой папке и запустить setup.py программа — при условии, что virtualenv перенесет все соответствующие файлы в свою собственную папку site-packages.
ИЛИ сценарий 2 заключается в том, чтобы разархивировать файлы непосредственно в site-packages и запустить его оттуда (после входа в virtualenv) и т. Д
Спасибо, что помогли Python clutz с этим!
Ответ №1:
Обычно я бы извлек программу во временную папку, затем из этой папки запустил setup.py используя прямой путь к экземпляру python virtualenv. например, если ваш virtualenv находится в /home/ username / virtualpy, используйте это (из вашей временной папки)
/home/username/virtualpy/bin/python setup.py install
Это должно установить его в папку пакета вашего сайта virtualenv.
Комментарии:
1. Итак, на самом деле операция импорта заключается в запуске python с использованием версии python (2.6), установленной в virtualenv … приятно! Спасибо Dwelch.
2. Убедитесь, что вы запускаете его из временной папки; setup.py скорее всего, ожидается, что это будет текущая папка.
3. Похоже, в этом больше нет необходимости. Как только виртуальная среда env активирована, я просто запускаю
python setup.py install
илиpython setup.py develop
, и она устанавливается в нужном месте.
Ответ №2:
хорошо, когда вы переключаетесь на виртуальную среду. вы должны ввести
which python
и если он возвращает путь, по которому существует ваша виртуальная среда, тогда все в порядке, вы можете напрямую запустить эту команду.
$ python setup.py build
$ python setup.py install
но если он указывает путь глобального уровня, который не является вашим virtualenv's
путем, тогда вам следует попробовать использовать
$ ~/.virtualenv/python-env/bin/python setup.py build
$ ~/.virtualenv/python-env/bin/python setup.py install
Ответ №3:
Если пакет не будет установлен из репозитория, попробуйте в venv с помощью sudo. В качестве примера для пакета python pathos;
/venv3.6/bin$ sudo pip3 install pathos
Ответ №4:
PACKAGE_DIR=/some/package/directory/path экспортировать VENV=$(pipenv —venv) amp;amp; экспортировать BASE_DIR=$(pwd) amp;amp; cd $PACKAGE_DIR amp;amp; $VENV/bin/python setup.py установить amp;amp; cd $BASE_DIR