ImportError: нет модуля с именем sip (python2.7 PyQt4) - PullRequest
1 голос
/ 29 марта 2019

Я сейчас использую Ubuntu 18.04 LTS.

Я пытаюсь установить программу, для которой нужны PyQt4 и QtWebKit, поэтому необходима ручная установка, поскольку QtWebKit исключен из PyQt4.

Я скачал sip 4.19.12 (при 4.19.14 установка PyQt4 не удалась) и PyQt4 4.12.13

Я запустил virtualenv, убедился, что он работает как положено, и попытался установить sip, который работает:

$ python configure.py
$ make
$ make install

Затем я продолжаю то же самое с PyQt4, без ошибок.

Когда я пытаюсь запустить мою программу .py, она выдает следующую ошибку:

$ python RNAEditor.py
Traceback (most recent call last):
File "RNAEditor.py", line 9, in <module>
from Helper import Helper, Parameters
File "/home/bioinfo/Documentos/Ferramentas_RNAEditor/RNAEDITOR_ch/Helper.py", line 13, in <module>
from PyQt4 import QtCore
ImportError: No module named sip

$ sudo python RNAEditor.py 
Traceback (most recent call last):
File "RNAEditor.py", line 9, in <module>
from Helper import Helper, Parameters
File "/home/bioinfo/Documentos/Ferramentas_RNAEditor/RNAEDITOR_ch/Helper.py", line 13, in <module>
from PyQt4 import QtCore
ImportError: No module named PyQt4

Я уверен, что в моем виртуальном окружении есть sip и PyQt4, так как при импорте обоих в virtualenv / python ошибки тоже нет.

$ python
>>> import PyQt4
>>> import sip
>>> from PyQt4 import QtCore
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: No module named sip

Любые идеи о том, как установить PyQt4 и sip при ручной установке, или почему он работает не так, как задумано?

1 Ответ

0 голосов
/ 12 апреля 2019

Я получил его для работы с конкретными версиями SIP и PyQt4 и запуска в virtualenv. Я понятия не имею, что происходит, но кажется, что в Ubuntu 18.04 что-то происходит с последними версиями PyQt4 и SIP, и они не работают так, как задумано, но они работают в Ubuntu 16.04 (протестировано). Код, который работал в Ubuntu 18.04:

PYQT4 4.12.1 и sip 4.19.12

sudo apt-get install python-pip python2.7-dev libxext-dev python-qt4 qt4-dev-tools build-essential

pip install virtualenv


virtualenv PROJECTNAME
source PROJECTNAME/bin/activate


cd SIP_SOURCE_DIRECTORY
python configure.py
make
make install

cd PYQT4_SOURCE_DIRECTORY
python configure.py
make
make install

Тогда у вас есть virtualenv, где поддерживается QtWebKit, что важно для многих приложений

...