繁体   English   中英

如何使用 QtWebEngine 在 Raspberry Pi 上安装 PySide2 / PyQt5?

[英]How to install PySide2 / PyQt5 on Raspberry Pi with QtWebEngine?

我知道可以使用以下命令在 Raspbian 上安装 PySide2:

sudo apt-get install python3-pyside2.qt3dcore python3-pyside2.qt3dinput python3-pyside2.qt3dlogic python3-pyside2.qt3drender python3-pyside2.qtcharts python3-pyside2.qtconcurrent python3-pyside2.qtcore python3-pyside2.qtgui python3-pyside2.qthelp python3-pyside2.qtlocation python3-pyside2.qtmultimedia python3-pyside2.qtmultimediawidgets python3-pyside2.qtnetwork python3-pyside2.qtopengl python3-pyside2.qtpositioning python3-pyside2.qtprintsupport python3-pyside2.qtqml python3-pyside2.qtquick python3-pyside2.qtquickwidgets python3-pyside2.qtscript python3-pyside2.qtscripttools python3-pyside2.qtsensors python3-pyside2.qtsql python3-pyside2.qtsvg python3-pyside2.qttest python3-pyside2.qttexttospeech python3-pyside2.qtuitools python3-pyside2.qtwebchannel python3-pyside2.qtwebsockets python3-pyside2.qtwidgets python3-pyside2.qtx11extras python3-pyside2.qtxml python3-pyside2.qtxmlpatterns python3-pyside2uic

但是,这不包括 QtWebEngine,我似乎也找不到像 python3-pyside2.qtwebengine 这样的包。 我可以替代使用的 PyQt5 也是如此,但它也不存在。

所以我的问题是:有什么方法可以在我的 Raspberry Pi(Raspbian 10 “Buster”)上运行我使用 QtWebEngine 的 Python 应用程序? 我还有 6 个 Pi 需要运行应用程序。 因此,如果唯一的解决方案是从源代码构建,有没有办法在一台机器上构建,然后将其分发给其他机器而无需重新编译?

另一个考虑是使用 QWebView 而不是 QWebEngineView 因为这似乎可以通过 QtWebKit 至少用于 PyQt5(包 python3-pyqt5.qtwebkit)。 那行得通吗? 尽管 QtWebKit 已被弃用,是否可以解决该问题? 我还有一个问题,在我的 Windows 机器上,QtWebKit 不包含在 PyQt5 包中,单独的 PyQtWebKit PyPl 包也不工作,所以很难对工具进行编码/调试,因为我总是必须将它移动到raspi first...所以不管我怎么说,总有一些不方便的东西...

所以我终于自己找到了解决方案。 据我了解,在 Raspberry Pi OS 存储库中找不到 QtWebEngine 的原因是 Pi OS 可以在所有 Raspberry Pi 上运行,包括分别具有 ARMv6 和 ARMv7 CPU 架构的 Pi 1 和 Pi 2。 然而,WebEngine 模块是平台相关的,不再针对 ARMv6/7 进行测试、编译和分发,因此他们不会在 Raspberry Pi OS 的存储库中发布它。 幸运的是,我使用的Raspberry Pi 3具有 ARMv8,因此可以从 Debian 存储库安装 QtWebEngine ,它为该架构提供 QtWebEngine。 方法如下:

打开你的sources.list文件

sudo nano /etc/apt/source.list

添加以下行并保存/关闭:

deb http://deb.debian.org/debian/ buster main

现在更新您的包裹清单

sudo apt update

您可能会遇到一些关于缺少公钥的错误,我们现在将通过密钥服务器进行验证:

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 648ACFD622F3D138

请注意,密钥648ACFD622F3D138是第一个显示在上一步的错误消息中的密钥。 它实际上告诉我缺少 3 个键,但处理第一个键就足以现在再次更新包列表,然后最终能够安装模块。

sudo apt update
sudo apt-get install python3-pyside2.qtwebengine

我显然没有足够的代表发表评论。 但编辑上面的源文件应该是sudo nano /etc/apt/sources.list

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM