当我尝试编译 pyqt 时出现错误
我已经安装了所有先决条件,但仍然显示相同的问题,请找到答案
答案1
对于 Python 2
sudo apt-get install python-dev
由于Python.h
由-dev
对于 Python 3
sudo apt-get install python3-dev
答案2
缺少的头文件 Python.h 位于 python-dev 包中,首先检查您是否已安装它:
$ dpkg --get-selections |grep python-dev
libboost-mpi-python-dev install
libboost-python-dev install
python-dev install
您还可以使用“locate”来查看文件是否存在:
$ locate Python.h
/usr/include/python2.7/Python.h
一旦你知道了你有头文件,就试着看看编译器在哪里寻找它:
cd PyQt_installation_dir
grep -r python2.7 .
...
./QtNetwork/QtNetwork.pro:INCLUDEPATH += /usr/local/include/python2.7
...
在我的例子中,问题在于文件位于 /usr/include/python2.7,但 Makefile 包含路径 (-I) 包含 /usr/local/include/python2.7。为了解决这个问题,我创建了一个链接:
cd /usr/local/include
ln -s ../../include/python2.7 .
也许有更好的方法来做到这一点,但至少编译是有效的。
祝好,哈里