Ubuntu 12.04.1 下搭建 Python3.4.2 + Qt5.3.2 + PyQt5.11.3 + Eric6.0 开发平台

时间:2022-08-10 23:03:50

本文引自http://blog.csdn.net/idber/article/details/40076821


安装Python3.4.2
Python3.4.2 下载:https://www.python.org/downloads/release/python-342/
cd /media/Datapart/Software/Python
tar xvf Python-3.4.2.tgz

cd Python-3.4.2

 ./configure --prefix=/opt/python --enable-shared --enable-ipv6 --enable-loadable-sqlite-extensions --with-dbmliborder=bdb:gdbm --with-computed-gotos --without-ensurepip --with-system-expat --with-system-libmpdec --with-system-ffi --with-fpectl CC="x86_64-linux-gnu-gcc" CFLAGS="-g -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security " LDFLAGS="-Wl,-Bsymbolic-functions -Wl,-z,relro" CPPFLAGS="-D_FORTIFY_SOURCE=2"

make

sudo make install

建立链接
sudo ln -s /opt/python/lib/libpython3.4m.so.1.0 /usr/lib/libpython3.4m.so.1.0

sudo ln -s /opt/python/lib/libpython3.4m.so.1.0 /usr/lib/libpython3.4m.so

sudo ln -s /opt/python/lib/libpython3.so /usr/lib/libpython3.so

sudo ln -s /opt/python/lib/libpython3.so /usr/lib/libpython3.so

sudo ln -s /opt/python/bin/python3.4 /usr/bin/python3


wget http://pypi.python.org/packages/source/s/setuptools/setuptools-7.0.tar.gz

tar xvf setuptools-7.0.tar.gz

cd setuptools-7.0

sudo python3 setup.py install

sudo /opt/python/bin/./easy_install pip


安装Qt5
Ubuntu 12.04.1 自带Qt4的部分库文件,但是我们的平台要求Qt5,所以首先安装Qt5.
Qt5.3.2下载:http://qt-project.org/downloads
安装过程:
下载到的是Qt5的在线安装程序,为其赋予可执行权限即可单击启动。由于我之前文件都安装在/opt目录下,故这里以root身份安装:

chmod a+x qt-opensource-linux-x64-5.3.2.run

sudo ./qt-opensource-linux-x64-5.3.2.run

sudo ln -s /opt/Qt/5.3/gcc_64/bin/qmake /usr/bin/qmake

安装路径:
/opt/Qt

安装SIP 4.16.4。
SIP 4.16.4下载:http://www.riverbankcomputing.com/software/sip/download
安装过程:
tar xvf sip-4.16.4.tar.gz
cd sip-4.16.4

python3 configure.py

make

sudo make install 

sudo ln -s  /opt/python/bin/sip /usr/bin/sip

配置过程:
SIP无需配置,只是需要安装完成后注意核对一下版本:
分别在终端输入:
sip -V  
在python3环境输入:
python3
>>> import sip  
>>> print(sip.SIP_VERSION_STR)

安装PyQt5
PyQt是Python的一个跨平台图形开发工具集,是Python与Qt的成功融合。PyQt包含了大约440个类、超过6000个的函数和方法,灰常强大。需要注意的是,Eric(一种Python IDE,依赖PyQt)当前最新的稳定版Eric5只支持PyQt4(确切的说是PyQt4.8以上5.0以下),支持PyQt5的Eric版本现在仅为Eric6.0 snapshot版,该版本包含最新的Eric5的所有功能,但稳定性需要测试。如果你希望使用稳定的Eric5,请在此步骤安装PyQt4的最新版PyQt4.11.2。这里我们安装PyQt5.3.2.
PyQt5.3.2下载:http://www.riverbankcomputing.com/software/pyqt/download5
安装过程:
tar xvf PyQt-gpl-5.3.2.tar.gz
cd PyQt-gpl-5.3.2

python3 configure.py

注意:此命令生成各种Qt模块后,其中的QtWebKitWidgets模块由于Qt4和Qt5的qprinter.h所属模块的调整(Qt4存在于QtGui中,Qt5将其调整到QtPrintSupport中了),QtWebKitWidgets的Makefile中缺失了对QtPrintSupport的头文件目录引用,会导致后面编译PyQt5时无法找到qprinter.h头文件,编译失败(编译过程非常漫长):
qprinter.h: No such file or directory
可以直接在QtWebKitWidgets模块源文件的QtWebKitWidgets.pro文件中加入:

vi QtWebKitWidgets/QtWebKitWidgets.pro

QT += printsupport //增加一项

错误处理:
strip:/usr/bin/pyuic5: 不可识别的文件格式
make: [install_pyuic5] 错误 1 (忽略)
vi Makefile
#    -strip $(INSTALL_ROOT)/usr/bin/pyuic5  //注解掉
接下来执行编译安装:
make

sudo make install

sudo ln -s /opt/python/bin/pyuic5 /usr/bin/pyuic5

配置过程:
安装完成后进入Python3环境验证是否安装成功:
python3
>>> from PyQt5.QtCore import PYQT_VERSION_STR
>>> print(PYQT_VERSION_STR)

安装QScintilla2
QScintilla2是连接编译器和Python的接口,因此是Eric的必需前置组件。QScintilla2 中需要单独安装3个模块:本体,Designer和python bingdings。
QScintilla2.8.4下载:http://www.riverbankcomputing.com/software/qscintilla/download
安装过程:
tar xvf QScintilla-gpl-2.8.4.tar.gz
cd QScintilla-gpl-2.8.4  
A.安装本体:
cd Qt4Qt5

qmake qscintilla.pro

make

sudo make install

 
B.安装Designer:
cd designer-Qt4Qt5

qmake designer.pro

make

sudo make install

C.安装Python bingdings:
cd Python

python3 configure.py --pyqt=PyQt5

make

sudo make install
 
配置过程:
python3
>>> from PyQt5.Qsci import QSCINTILLA_VERSION_STR
>>> print(QSCINTILLA_VERSION_STR)

安装Eric6
Eric作为一款强大的开源Python IDE,支持Qt界面设计器的Eric在Python GUI开发中更是首屈一指,Python+PyQt+Eric已经成为一种标准的Python GUI开发平台。其中Eric4支持Python2.6+与PyQt4.6+组合,Eric5支持Python3.0+与PyQt4.8+组合,Eric6支持Python3.0+与PyQt5.0+组合。目前Eric5.4.7为最新稳定版。Eric6.0为snapshot版。上文已有介绍。具体搭配可参考:http://eric-ide.python-projects.org/eric-download.html。这里安装Eric6.0.
Eric6.0下载:http://sourceforge.net/projects/eric-ide/files/eric6/stable/
下载其中的eric6-6.0.0-RC1.tar.gz主文件
安装过程:
tar xvf eric6-6.0.0-RC1.tar.gz
cd eric6-6.0.0-RC1
sudo python3 install.py        //安装主程序  
应该能够顺利安装完成。
需要注意,由于是以root身份安装(sudo),所以运行时需要执行:
sudo eric6

配置过程:
终端输入sudo eric6启动:
1、选择Settings -> preference -> Editor -> Autocompation。勾选所有选框;
2、选择Settings -> preference -> Editor -> QScintilla 。勾上左右的两个选框,然后在下面source中,选择from Document and API files;
3、选择Settings -> preference -> Editor -> APIs。勾选Complie APIs Autocompation,在Language中,选择python3。点面下面的Add from installed APIs按钮,选择住需要的.api文件。最后点击Compile APIs;
配置完成。

Demos

提供1个简单的Demo验证平台是否正确搭建。
非Eric小程序:
vi demo.py
#!/usr/bin/env python3  
from PyQt5.QtWidgets import (QApplication, QLabel)  
import sys  

if __name__ == "__main__":
    app = QApplication(sys.argv)  
    label = QLabel("<center>Hello World with PyQt5!</center>")  
    label.resize(200, 50)  
    label.show()  
    sys.exit(app.exec_())  

python3 demo.py