Не удается найти sip.h при установке pyQt4
Я пытаюсь установить PyQt-x11-gpl-4.11 в моем Ubuntu 13.04 Linux vm, configure-ng.py работает нормально, но при использовании make выдает следующее сообщение об ошибке, **
root@ubuntu:/home/yanwang/Downloads/PyQt-x11-gpl-4.11# make
cd QtCore/ && make -f Makefile
make[1]: Entering directory `/home/yanwang/Downloads/PyQt-x11-gpl-4.11/QtCore'
g++ -c -m64 -pipe -O2 -Wall -W -D_REENTRANT -fPIC -DSIP_PROTECTED_IS_PUBLIC -Dprotected=public -DQT_NO_DEBUG -DQT_PLUGIN -DQT_CORE_LIB -DQT_SHARED -I/usr/share/qt4/mkspecs/linux-g++-64 -I. -I/usr/include/qt4/QtCore -I/usr/include/qt4 -I. -I/usr/local/include/python2.7 -I../qpy/QtCore -I. -o sipQtCoreQTimer.o sipQtCoreQTimer.cpp
In file included from sipQtCoreQTimer.cpp:29:0:
sipAPIQtCore.h:33:17: fatal error: sip.h: No such file or directory
compilation terminated.
make[1]: *** [sipQtCoreQTimer.o] Error 1
make[1]: Leaving directory `/home/yanwang/Downloads/PyQt-x11-gpl-4.11/QtCore'
make: *** [sub-QtCore-make_default-ordered] Error 2
root@ubuntu:/home/yanwang/Downloads/PyQt-x11-gpl-4.11#
Файлы SIP установлены в следующем каталоге:
/home/iriswang/Downloads/sip-4.16.1
Пока файлы PyQt находятся в каталоге:
/home/iriswang/Downloads/PyQt-x11-gpl-4.11
Я настроил переменную окружения так, чтобы она содержала каталог sip:
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/home/iriswang/Downloads/sip-4.16.1:/home/iriswang/Qt5.3.1/5.3/gcc_64/bin
Тем не менее, похоже, что он все еще не может найти файл sip.h. Есть идеи, что я могу сделать? Кстати, я установил python-dev
пакет, так что не должно быть из-за этого. И я проверил, успешно ли установлен sip, похоже, что все в порядке:**
root@ubuntu:/home/iriswang/Downloads# sip -h
Usage:
sip [-h] [-V] [-a file] [-b file] [-B tag] [-c dir] [-d file] [-e] [-g] [-I dir] [-j #] [-k] [-m file] [-o] [-p module] [-P] [-r] [-s suffix] [-t tag] [-T] [-w] [-x feature] [-X id:file] [-z file] [file]
where:
-h display this help message
-V display the sip version number
-a file the name of the QScintilla API file [default not generated]
-b file the name of the build file [default none generated]
-B tag add tag to the list of timeline backstops
-c dir the name of the code directory [default not generated]
-d file the name of the documentation file (deprecated) [default not generated]
-e enable support for exceptions [default disabled]
-g always release and reacquire the GIL [default only when specified]
-I dir look in this directory when including files
-j # split the generated code into # files [defaul
...
Большое спасибо!**
1 ответ
Это кажется распространенной проблемой при установке PyQt для Ubuntu. Мое исследование показало два возможных решения, как вы могли бы это исправить.
(1) Вам нужно обновить заголовок Python в Makefiles, чтобы убедиться, что вы связаны с /usr/include/python2.7
вместо /usr/local/include/python2.7.
Смотрите эту ссылку для простого исправления:
Неустранимая ошибка при компиляции PyQt5: Python.h не существует
(2) Вы можете установить PyQt4.10 вместо PyQt4.11. Другие пользователи онлайн сообщили, что PyQt4.11 не будет установлен правильно. Смотрите эту ссылку здесь для получения дополнительной информации:
Я бы порекомендовал #1, так как вы должны использовать последнюю версию PyQt. Обязательно проведите дополнительное исследование, так как я считаю, что ваша проблема не уникальна.