Проблемы с установкой pyqt4-dev-tools - PullRequest
1 голос
/ 07 февраля 2012

Здравствуйте, у меня есть эта проблема с PyQt4-dev-tools, которые включают в себя:
* компилятор пользовательского интерфейса (pyuic4) * генератор файлов ресурсов (pyrcc4) * средство поиска строк перевода (pylupdate) Проблема возникает, когда я хочупреобразовать мой код, сохраненный из Designer, в модуль, используя:

pyuic4 untitled.ui>test.py 

, и я получаю эту ошибку:

Traceback (most recent call last):
  File "/usr/bin/pyuic4", line 3, in <module>
    import PyQt4.uic.pyuic
  File "/usr/lib/pymodules/python2.6/PyQt4/uic/pyuic.py", line 4, in <module>
    from PyQt4 import QtCore
RuntimeError: the sip module implements API v8.0 to v8.1 but the PyQt4.QtCore module requires API v7.1

Я попытался обновить, удалить и переустановить, установить вручную и т. д...

вот полный журнал того, что я сделал: http://pastebin.com/2DYfAwdC

PD Извините за мой плохой английский

1 Ответ

2 голосов
/ 07 февраля 2012

Ваш модуль SIP Python должен быть переустановлен в более новую версию, которая теперь несовместима с вашей установкой PyQt. Я бы порекомендовал удалить sip, PyQt и Qt, а затем переустановить их.

Убедитесь, что ваш apt обновлен, а также убедитесь, что у вас нет старой установки PyQt где-то в вашем pythonpath.

Если вы можете успешно импортировать PyQt самостоятельно, попробуйте сравнить пути импорта, чтобы убедиться, что вы не используете другую версию PyQt:

# from a shell
python -c "from PyQt4 import QtCore; print QtCore.PYQT_VERSION_STR, QtCore.QT_VERSION_STR; print QtCore.__file__"

Сравните версии и местоположение PyQt4 с той, которая была выгружена из вашей трассировки при использовании pyuic4

Если глоток обнаружен в другом месте, попробуйте настроить PYTHONPATH, чтобы подтвердить:

import sys
sys.path.insert(0, "/usr/lib/pymodules/python2.6")

from PyQt4 import QtCore

Если это работает без сбоев, вам, вероятно, следует удалить новый sip, который вызывает конфликт, отсюда: "/usr/lib/python2.6/dist-packages/sip.so"

...