Как установить SIP и PyQt в виртуальной среде?
Я новичок в virtualenv
. Я хочу установить spyder, для которого требуется PyQt4
, для которого требуется SIP
.
pip
не работает, поэтому я загрузил SIP
и выполнил следующие команды:
python configure.py
make
make install
Но я получил эту ошибку:
make[1]: entrant dans le répertoire « /stck2/stck2.2/ptoniato/python/pip/virtualenv-1.10.1/provaenv/build/SIP/sipgen »
cp -f sip /stck2/stck2.2/ptoniato/python/pip/virtualenv-1.10.1/provaenv/bin/sip
make[1]: quittant le répertoire « /stck2/stck2.2/ptoniato/python/pip/virtualenv-1.10.1/provaenv/build/SIP/sipgen »
make[1]: entrant dans le répertoire « /stck2/stck2.2/ptoniato/python/pip/virtualenv-1.10.1/provaenv/build/SIP/siplib »
cp -f sip.so /stck2/stck2.2/ptoniato/python/pip/virtualenv-1.10.1/provaenv/lib/python2.7/site-packages/sip.so
strip /stck2/stck2.2/ptoniato/python/pip/virtualenv-1.10.1/provaenv/lib/python2.7/site-packages/sip.so
cp -f /stck2/stck2.2/ptoniato/python/pip/virtualenv-1.10.1/provaenv/build/SIP/siplib/sip.h /usr/local/python/include/python2.7/sip.h
cp: impossible de supprimer « /usr/local/python/include/python2.7/sip.h »: Permission non accordée
make[1]: *** [install] Erreur 1
make[1]: quittant le répertoire « /stck2/stck2.2/ptoniato/python/pip/virtualenv-1.10.1/provaenv/build/SIP/siplib »
make: *** [install] Erreur 2
Невозможное средство supprimer Невозможно стереть.
У меня нет доступа root к этому компьютеру. Я думаю, что существует конфликт между пакетом python, который установлен по умолчанию на этом компьютере и virtualenv
, который я создаю.
Как я могу решить проблему?
Ответы
Ответ 1
Вот шаги, которые я использовал для установки sip в моем virtualenv. Фокус в том, чтобы убедиться, что вы используете флаг (недокументированный?) --always-copy
, так что он не просто символизирует каталог /usr/include/python2.7
в вашем virtualenv
.
virtualenv --always-copy ve
. ve/bin/activate
wget http://sourceforge.net/projects/pyqt/files/sip/sip-4.15.4/sip-4.15.4.zip
unzip sip-4.15.4.zip
cd sip-4.15.4
python configure.py --incdir=../ve/include/python2.7
make
make install
cd ..
Затем я смог установить PyQt4 следующим образом:
wget http://sourceforge.net/projects/pyqt/files/PyQt4/PyQt-4.10.3/PyQt-x11-gpl-4.10.3.tar.gz
tar zxvf PyQt-x11-gpl-4.10.3.tar.gz
cd PyQt-x11-gpl-4.10.3
python configure.py
make
make install
Это дало ошибку в конце, но оно было проигнорировано. Я думаю, что это всего лишь часть установки "конструктора", которая не критична.
install: cannot create regular file `/usr/lib/x86_64-linux-gnu/qt4/plugins/designer/libpyqt4.so': Permission denied
make[1]: [install_target] Error 1 (ignored)
Ответ 2
убедитесь, что у вас активен ваш virtualenv.
При установке как pyenv, так и pyenv-virtualenv вы можете быстро выполнить следующие команды.
Я только что успешно установил SIP и PyQt4 на вновь созданный virtualenv:
pyenv virtualenv testenvironment
pyenv rehash
pyenv shell testenvironment
cd ~/.pyenv/versions/testenvironment/
pip install --no-install sip #fails but do not worry
cd build/sip/
python configure.py #--incdir=~/.pyenv/versions/testenvironment/include/python2.7 may be needed
make
make install
cd ../../
Затем вы готовы загрузить и установить PyQt4. Вы должны это сделать
вручную.
Перейдите на страницу PyQt4 и получите
последней версии в рабочей папке, распакуйте ее, и вы готовы к работе
снова с настройкой /make/make install.
Проверьте, импортируете ли некоторые пакеты PyQt4 в интерактивный сеанс python:
>>> from PyQt4 import QtCore, QtGui