编译 PyQt5 时出现致命错误:Python.h 不存在



我正在尝试在我的Ubuntu 12.04机器上安装PyQt5。因此,从这里下载后,我将其解压缩,运行python configure.pymake.但是,会产生以下结果:

cd qpy/ && ( test -f Makefile || /opt/qt5/bin/qmake /home/kram/Downloads/PyQt-gpl-5.0/qpy/qpy.pro -o Makefile ) && make -f Makefile 
make[1]: Map '/home/kram/Downloads/PyQt-gpl-5.0/qpy' is entered
cd QtCore/ && ( test -f Makefile || /opt/qt5/bin/qmake /home/kram/Downloads/PyQt-gpl-5.0/qpy/QtCore/QtCore.pro -o Makefile ) && make -f Makefile 
make[2]: Map '/home/kram/Downloads/PyQt-gpl-5.0/qpy/QtCore' is entered
g++ -c -pipe -fno-strict-aliasing -O2 -Wall -W -fPIC -D_REENTRANT -DQT_NO_DEBUG -DQT_CORE_LIB -I/opt/qt5/mkspecs/linux-g++ -I. -I. -I../../QtCore -I/usr/local/include/python2.7 -I/opt/qt5/include -I/opt/qt5/include/QtCore -I. -o qpycore_chimera.o qpycore_chimera.cpp
qpycore_chimera.cpp:21:20: fatal error: Python.h: File or folder does not exist
compilation terminated.
make[2]: *** [qpycore_chimera.o] Error 1
make[2]: Map '/home/kram/Downloads/PyQt-gpl-5.0/qpy/QtCore' is left
make[1]: *** [sub-QtCore-make_first] Error 2
make[1]: Map '/home/kram/Downloads/PyQt-gpl-5.0/qpy' is left
make: *** [sub-qpy-make_first-ordered] Error 2

(我将错误消息的某些部分从荷兰语翻译成英语,因此某些单词可能与正常措辞有点偏差。

有人在这里有什么问题吗?相关的 Python.h 文件可能在哪里?

问题是每个 Makefile 中所有 python 标头的包含路径都将指向 /usr/local/include/python2.7 ,这应该被/usr/include/python2.7

对此有两种可能的解决方案。您可以更改每个 Makefile 中出现的所有内容,或者您可以创建指向该位置的符号链接

sudo ln -s /usr/include/python2.7 /usr/local/include/python2.7

现在您可以运行make

sudo apt-get install python-dev

您缺少 python 头文件。

您遇到的问题是 PyQt 假设您没有使用发行版的托管 python,而是默认在 /usr/local/include/python2.7 中查找 sip 。

幸运的是,configure.py提供了覆盖python和sip包含位置的选项:

python configure.py --sip-incdir /usr/include/python2.7 py_inc_dir=/usr/include/python2.7

此解决方案应优先于将/usr/include/python2.7符号链接到/usr/local/include/python2.7,因为这将使手动安装的软件能够污染(或损坏安装到(发行版管理的路径的软件包。

最好将

现有的头文件添加到 QTCreator 和 Anjuta IDE 中的项目目录中。

相关内容

  • 没有找到相关文章

最新更新