raspberry pi2 安装pyqt 实验

需求:用raspberry做主机,linux操作系统。连接显示器,展示宣传内容,定时刷新。
使用的设备是raspberry pi2 B+ ,python2.7,使用pyqt4做图形化界面。最初本来想用自带的tk,但是不能嵌入web浏览器。如果调用操作系统的浏览器,如果将来要放大、屏蔽按钮等等扩展就不方便了。

首先安装PyQt4开发包
$ sudo apt-get update
$ sudo apt-get upgrade
$ sudo apt-get install python-dev
$ sudo apt-get install qt4-dev-tools

下载并安装SIP
$ wget https://sourceforge.net/projects/pyqt/files/sip/sip-4.17/sip-4.17.tar.gz
$ tar vxf sip-4.17.tar.gz
$ cd sip-4.17
$ python configure.py
$ make all
$ sudo make install
下载安装PyQt4
$ wget https://sourceforge.net/projects/pyqt/files/PyQt4/PyQt-4.11.4/PyQt-x11-gpl-4.11.4.tar.gz
$ tar vxf PyQt-x11-gpl-4.11.4.tar.gz
$ cd PyQt-x11-gpl-4.11.4
$ python configure.py
$ make all # 耗时real 113m20.864s
$ sudo make install

python代码

#!/bin/env python
# -*- coding:utf-8 -*-
# -------------------------------
# Date:        2016-02-17
# Author:      simonzhang
# Web:         www.simonzhang.net
# Email:       simon-zzm@163.com
# -------------------------------
import sys
from PyQt4.QtWebKit import QWebView
from PyQt4.QtGui import QApplication, QDesktopWidget, QMainWindow
from PyQt4.QtCore import QUrl
# 创建应用
app = QApplication(sys.argv)
# 获取桌面分辨率
getSize = QDesktopWidget().availableGeometry()
w = getSize.width()
h = getSize.height()
# 创建并连接web服务器
browser = QWebView()
browser.load(QUrl(sys.argv[1]))
browser.show()
# 重新设置浏览器大小
browser.resize(w, h)
# 启动应用
app.exec_()

测试:再Linux桌面下在控制台输入

python testPyQt.py http://www.simonzhang.net/test.html

显示正常,需要展示的内容做html页面就可以了。自动刷新部分也写在页面里,一分钟刷新一次。将

放在页面head里面。

随桌面自动带起来。编辑桌面启动的账户下配置.profile

if [ $DISPLAY == ":0" ];then
    python Desktop/testPyQt.py http://www.simonzhang.net/test.html
fi

最终效果
pyqt4刷新

官方pyqt5不支持python2了,只能用python3,但是本人一直在用python2。所以也编译了一下PyQt5做测试。
$ sudo apt-get install qt5-default
两个包地址如下,安装编译方法和上面相同
http://downloads.sourceforge.net/project/pyqt/sip/sip-4.17/sip-4.17.tar.gz
https://sourceforge.net/projects/pyqt/files/PyQt5/PyQt-5.5.1/PyQt-gpl-5.5.1.tar.gz
编译耗时 120m40.725s

简单测试正常。估计细节还是会有问题。如果要用pyqt5还是直接用python3比较好。此处只为测试。

发表评论

电子邮件地址不会被公开。 必填项已用*标注