Home
Categories
WIKI
Topic
User
LANGUAGE:
中文
English
在编译 pyqt5.13.2 时遇到的问题及解决办法
Experiences and Insight
601
views ·
0
replies ·
To
floor
Go
摇摆哥
deepin
2019-12-17 03:20
Author
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** 中。 下面为具体安装过程。
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
#这样就安装结束了, 至于验证是否成功, 网上有很多教程, 可以看看。
Copy the Code
因为我要使用 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 中运行下面命令。
set qt-arg ["enable--pepper-testing",]
Copy the Code
Reply
Like 0
Favorite
View the author
All Replies
No replies yet
Please
sign
in first
Featured Collection
Change
[Tutorial] deepin25 WSL Offline Installation Guide
UOS AI 2.8 Released! Three New Intelligent Agents & Major Evolution
Solid Q&A | deepin 25 Common Questions – The Immutable System Edition
New Thread
Popular Ranking
Change
WiFi Drivers
Popular Events
More
先说说, 导致有这个坑的原因是: 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** 中。 下面为具体安装过程。
因为我要使用 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 中运行下面命令。