I'm trying to install PyQt-x11-gpl-4.11 in my ubuntu 13.04 Linux vm, configure-ng.py ran well but when using make, it prompts below error message,**
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#
The SIP files are installed under below directory:
/home/iriswang/Downloads/sip-4.16.1
While the PyQt files are under directory:
/home/iriswang/Downloads/PyQt-x11-gpl-4.11
I've setup the environment variable so that it contains the sip directory:
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
However, it looks like it still can't find sip.h file. Any idea what I can do? BTW I've installed python-dev package, so it shouldn't be because of that. And I checked whether sip is installed successful, looks like it's OK too:**
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
...
Thank you very much!**
This seems to be a common problem when installing PyQt for Ubuntu. My research showed two possible solutions on how you could fix this.
(1) You need to update your Python header in the Makefiles to make sure that you are linked to
/usr/include/python2.7instead of/usr/local/include/python2.7.See this link for a simple fix:Fatal error while compiling PyQt5: Python.h does not exist
(2) You can install PyQt4.10 instead of PyQt4.11. Other online users have reported that PyQt4.11 will not install correctly. See this link here for more info:
http://iqbalnaved.wordpress.com/2014/05/31/installing-pyqt4-for-python-2-7-6-in-virtual-environement-in-ubuntu-14-04/
I would recommend #1 as you should be using the latest version of PyQt. Be sure to do some additional research as I believe your problem is not unique.