2019-12-16 pyqt5 安装与编译

pyqt5 目前更新到了 5.13.2 版本, 并且引入了 sip5 编译系统, sip5 与 sip4 区别挺大的, 所以 sip5 把我给引入了一个不小的坑, 花了差不多3天的时间才从 该坑爬出来。 先说说, 导致有这个坑的原因是: sip5 安装 pyqt5-sip 时的默认安装路劲为 /usr/local/lib/python3.5/dist-packages, 然而 pyqt5 的默认安装路径为 /usr/lib/python3/dist-packages/ 。 这就是坑,pyqt5-sip , pyqt5 , pyqtwebengine 必须要安装在同一个目录下。 在下面的安装过程中我选择将其安装在 /usr/local/lib/python3.5/dist-packages 中。 下面为具体安装过程。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
sudo pip3 install sip
pip3 show sip # 查看 sip 是否是 5.0 以上版本
tar xzf pyqt5.**.tar.gz -C .
cd PyQt5**

# 生成pyqt5-sip 包
sip-build --sdist PyQt5.sip

# 安装 pyqt5-sip 包
sudo pip3 install PyQt5.sip

# 确认 pyqt5-sip 安装目录是不是我们希望的目录
pip3 show pyqt5-sip

# 构建 pyqt5
sudo sip-build --no-make --qmake /opt/Qt5/bin/qmake --target-dir /usr/local/lib/python3.5/dist-packages/ --build-dir build
cd build
sudo make -j8
sudo make install
cd ../../

# 构建安装 pyqtwebengine
tar xzf pyqt5webengine.*.tar.gz -C .
cd pyqt5webengine**
sudo sip-build --no-make --qmake /opt/Qt5/bin/qmake --target-dir /usr/local/lib/python3.5/dist-packages/ --build-dir build
cd build
sudo make -j8
sudo make install

#这样就安装结束了, 至于验证是否成功, 网上有很多教程, 可以看看。

因为我要使用 qutebrowser , 所以在安装 pyqt5 的同时, 也安装了 pyqtwebengine , 希望后来要自己动手编译 pyqt5 的同学少掉坑。 在用 qt 5.13.2 与 pyqt5 , 使用 qutebrowser 时, 会有提示 plugin couldn’t load, 那是因为 flash 库没能正确的加载。 导致这个问题是因为在 qt 5.13.2 中引入了新的接口权限限制, 通过尝试, 可以在 qutebrowser 的 qt-arg 中加入 enbale–pepper-testing 参数。 在 qutebrowser 中运行下面命令。

1
set qt-arg ["enable--pepper-testing",]

2019-12-16 pyqt5 安装与编译
https://www.supermew.top/2019/12/16/pyqt5-安装与编译/
作者
八月
发布于
2019年12月16日
许可协议