2013-07-17 66 views
7

我試圖在我的Ubuntu 12.04盒子上安裝PyQt5。所以在從here下載它之後,我解壓縮它,運行python configure.pymake。然而讓,結果如下:編譯PyQt5時出現致命錯誤:Python.h不存在

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文件可以在哪裏?

回答

29

的問題是,包括路徑在每一個Makefile的所有蟒蛇頭將指向/usr/local/include/python2.7,這應該是/usr/include/python2.7

這有2級可能的解決方案。要麼你可以改變這一切發生在每一個Makefile文件,否則你可以創建一個符號鏈接到該位置

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

現在你可以運行make

6
sudo apt-get install python-dev 

您錯過了python頭文件。

+0

我也這麼認爲,但我已經安裝了它們。運行你的命令後,它說python-dev已經是最新的版本。 – kramer65

+0

你正在安裝什麼版本,你有什麼版本的python-dev –

+0

我不完全知道如何檢查python-dev的版本,但是我運行了'sudo apt-get install python2.7-dev',這也告訴我我有最新版本。 – kramer65

1

您遇到的問題是,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 

該溶液應優選libg.a連結/usr/include/python2.7/usr/local/include/python2.7作爲這將使手動安裝的軟件,以污染(或安裝到腐敗包)發行管理的路徑。

0

最好將現有的頭文件添加到QTCreator和Anjuta IDE中的項目目錄中。