​Qt for Python 入门¶​

本页重点介绍如何从源代码构建Qt for Python,如果你只想安装PySide2。 与你需要运行:pip

pip install pyside2

有关更多详细信息,请参阅我们的快速入门指南。此外,您可以 查看与项目相关的常见问题解答。

一般要求¶

  • Python:3.5+ 和 2.7

  • Qt:建议使用 5.12+

  • libclang:libclang 库,推荐:PySide10 2.5 版本 15。 可以在此处下载它的预构建版本。

  • CMake:需要 3.1+。

每个平台的指南¶

有关特定于平台的说明,请参阅以下页面:

  • 窗户

  • 苹果操作系统

  • Linux目录

  • 移动平台(iOS/安卓)(不支持)

  • 嵌入式平台(无官方支持)

    注意

    大多数基于 Linux 的嵌入式操作系统都提供 PySide2 及其官方 包管理器(例如 Raspbian和 ArchlinuxARM)。

正常的构建命令如下所示:

python setup.py install --qmake=/path/to/qmake \--ignore-git \--debug \--build-tests \--parallel=8 \--make-spec=ninja \--verbose-build \--module-subset=Core,Gui,Widgets

这将使用调试符号(包括测试)构建和安装项目, 使用ninja(而不是make),并且只考虑QtCore的模块子集,QtGUI 和 QtWidgets。

需要考虑的其他重要选项包括:

  • --cmake,以指定 cmake 二进制文件的路径,

  • --reuse-build,以仅重建修改后的文件,

  • --openssl=/path/to/openssl/bin,以对 OpenSSL 使用不同的路径,

  • --standalone,将Qt库复制到最终包中 使其在其他机器上工作,

  • --doc-build-online,以使用联机模板构建文档。

测试安装¶

安装完成后,您将能够执行我们的任何示例:

python examples/widgets/widgets/tetrix.py

运行测试¶

使用该选项将使我们能够运行项目内的所有自动测试:--build-tests

python testrunner.py test > testlog.txt

注意

在Windows上,不要忘记在你的路径中有qmake。 (set PATH=E:\Path\to\Qt\5.15\msvc2017_64\bin;%PATH%)

您还可以通过运行以下命令来运行特定测试(例如):qpainter_test

ctest -R qpainter_test --verbose

构建文档¶

从 5.15 开始,有两个选项可用于构建文档:

1. 构建仅限 rst 的文档(无 API)¶

解析Qt标头以生成PySide API文档的过程可能需要几个时间。 分钟,这意味着修改我们当前拥有的 RST 文件的特定部分可能会 成为一项艰巨的任务。

为此,您可以在虚拟环境中安装,并执行以下命令:sphinx

python setup.py build_rst_docs

这将生成一个具有以下结构的目录:html/

html
└── pyside2├── index.html├── ...└── shiboken2├── index.html└── ...

因此,您可以在浏览器上打开主页以检查生成的 文件。html/pyside2/index.html

这在更新文档的一般部分、添加教程、 修改构建说明等。

2. 构建文档(rst + API)¶

该文档是使用 qdoc 生成的,以获取 API 信息,以及本地 Python 相关注释的狮身人面像

系统需要 和 ,也在 Python 环境中,并且需要在运行安装过程之前安装:libxml2libxsltsphinxgraphviz

pip install graphviz sphinx

安装后,命令需要在 PATH 中,否则, 该过程将失败。还可以选择在系统范围内安装。graphvizdotgraphviz

由于该过程依赖于Qt安装,因此您需要指定目录的位置 您将与位于:qtbaseqmake

export QT_SRC_DIR=/path/to/qtbase

构建过程完成后,您可以转到生成的目录,然后运行:*_build/*_release/pyside2

make apidoc

注意

make 目标以 QCH(Qt 创建者帮助)格式构建离线文档 默认情况下。您可以使用配置选项切换到构建以供在线使用。apidoc--doc-build-online

最后,您将获得一个包含所有生成文档的目录。离线 帮助文件和 可以移动到您选择的任何目录。你 可以在构建目录中找到,.htmlPySide.qchShiboken.qchShiboken.qch*_build\*_release\shiboken2\doc\html

查看脱机文档¶

离线文档(QCH)可以使用Qt Creator IDE或Qt助手查看,即 用于查看QCH文件的独立应用程序。

要使用Qt Creator查看QCH,请按照使用Qt Creator帮助模式中概述的说明进行操作。如果您选择 请改用Qt助手,在启动前使用以下命令注册QCH文件 Qt助手:

助手 -注册 PySide.qch

注意

Qt Assistant 使用 QTextBrowser 后端渲染 QCH 内容,该后端支持 CSS样式的子集,但是,Qt Creator提供了另一种基于litehtml的样式。 后端,提供更好的浏览体验。目前,这不是默认设置 后端,因此您必须选择litehtml后端 明确在 中的选项卡下。GeneralQt Creator >> Tools >> Options >> Help

使用内部工具¶

可以在存储库内的目录下找到一组工具。tools/pyside-setup

  • checklibs.py:用于分析 Mach-O 二进制文件的动态库依赖项的脚本。 要使用此实用程序,只需运行:

    python checklibs.py /path/to/some.app/Contents/MacOS/Some
    

    此脚本是从此存储库中获取的。

  • create_changelog.py:用于创建可在目录中找到的更改日志的脚本。用法:dist/

    python create_changelog.py -r 5.15.1 -v v5.15.0..5.15 -t bug-fix
    
  • debug_windows.py:此脚本可用于找出为什么 PySide2 模块 无法加载各种DLL错误,例如缺少DLL或DLL中缺少符号。

    您可以将其视为 / 的 Windows 版本。lddLD_DEBUG

    在它下面使用命令行调试器和工具,两者都 与最新的 Windows 套件一起安装。cdb.exegflags.exe

    目的是要求用户在遇到 PySide2 导入不起作用时运行此脚本 窗户。然后,用户应提供生成的日志文件。

    顺便说一下,它也可以用于任何Windows可执行文件,而不仅仅是Python。 要使用它,只需运行:

    python debug_windows.py
    
  • missing_bindings.py:此脚本用于比较 PySide2 和 PyQt5 的状态 关于可用的模块和类。此内容显示在我们的维基页面中, 并且可以按如下方式使用:

    python missing_bindings.py --qt-version 5.15.1 -w all

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/132728.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

华为云使用脚本初始化Linux数据盘

初始化新挂载的磁盘 登录云服务器,执行以下命令获取自动初始化磁盘脚本。 wget https://ecs-instance-driver.obs.cn-north-1.myhuaweicloud.com/datadisk/LinuxVMDataDiskAutoInitialize.sh 说明: 若回显异常,请检查云服务器是否绑定弹性公…

深度学习-全连接神经网络-训练过程-模型正则与超参数调优- [北邮鲁鹏]

目录标题 神经网络中的超参数学习率超参数优化方法网格搜索法随机搜索法 超参数搜索策略粗搜索精搜索 超参数的标尺空间 神经网络中的超参数 超参数 网络结构:隐层神经元个数,网络层数,非线性单元选择等优化相关:学习率、dorpou…

EXCEL如何把一个单元格内的文本和数字分开?例如:龚龚15565 = 龚龚 15565

使用工具:WPS 举例: EXCEL如何把一个单元格内的文本和数字批量分开?不使用数据分列。 第一步、将第二行数据冻结 第二步、在B1、C1单元格输入需要分开的示例 第三步、点击选中B1单元格,输入快捷键【CTRLE】进行填充。B2单元格也是…

C++ - map 和 set 使用介绍

简介 其实在map 和 set 的底层实现当中有差不多一半的 结构是使用 二叉搜索树来实现,关于二叉搜索树可以看下面这个篇博客:C - 搜索二叉树_chihiro1122的博客-CSDN博客 而 set 是 key 模型,他是直接按照 key 值大小来有规律的在 二叉搜索树当…

pytorch环境配置

pytorch安装与基础 pytorch相关配置一:安装cuda1:找到nvidia control panel2:打开控制面板,找到系统信息中的,组件即可查看到cuda版本,这里我的cuda版本为12.0.1503:下载对应版本的 cuda toolkit4:安装流程5.验证是否安…

163邮箱开通发件功能

点击设置 查看详情 开启这个功能,如下 开通IMAP/SMTP服务 开通POP3/SMTP服务完成了 设置邮箱完成。

解决Agora声网音视频在后台没有声音的问题

前言:本文会介绍 Android 与 iOS 两个平台的处理方式 一、Android高版本在应用退到后台时,系统为了省电会限制应用的后台活动,因此我们需要开启一个前台服务,在前台服务中发送常驻任务栏通知,以此来保证App 退到后台时不会被限制活动. 前台服务代码如下: package com.notify…

QCustomPlot绘图类详解(大白话)

本文假定你会使用Qt开发,但未接触过QCustomPlot绘图类或者是刚接触。 如何往Qt中引入QCustomPlot 首先,去官网下载最新版本的源码,注意是QCustomPlot.tar.gz这个文件,里面包含源码和示例。实际上,我们只需要qcustompl…

[学习笔记]CS224W(图机器学习) 2022/2023年冬学习笔记

资料: 课程网址 斯坦福CS224W图机器学习、图神经网络、知识图谱【同济子豪兄】 斯坦福大学CS224W图机器学习公开课-同济子豪兄中文精讲 cs224w(图机器学习)2021冬季课程学习笔记集合 序言 到图神经网络GCN为止的内容参考了斯坦福CS224W图机…

XUbuntu22.04之查找进程号pidof、pgrep总结(一百九十)

简介: CSDN博客专家,专注Android/Linux系统,分享多mic语音方案、音视频、编解码等技术,与大家一起成长! 优质专栏:Audio工程师进阶系列【原创干货持续更新中……】🚀 人生格言: 人生…

【zlm】 webrtc源码讲解

目录 前端WEB 服务器收到请求 服务端的处理 播放 拉流 参考文章 前端WEB 服务器收到请求 POST /index/api/webrtc?applive&streamtest&typeplay HTTP/1.1 HttpSession::onRecvHeaderHttpSession::Handle_Req_POSTHttpSession::Handle_Req_POSTif (totalConte…

雅思学习总结

#【中秋征文】程序人生,中秋共享# 雅思小科普: 1. 什么是雅思考试? 雅思考试是由:英国文化协会、澳洲 IDP 教育集团、剑桥 大学考试委员会举办的英语水平测试。全称翻译成中文是: 国际英语语言测试系统。 2…

数据库直连提示 No suitable driver found for jdbc:postgresql

背景:我在代码里使用直连的方式在数据库中创建数据库等,由于需要适配各个数据库服务所以我分别兼容了mysql、postgresql、oracal等。但是在使用过程中会出现错误: No suitable driver found for jdbc:postgresql 但是我再使用mysql的直连方式…

片上网络(1)概述

前言 NoC:On-Chip Networks,片上网络。 由于多核乃至众核时代的到来,用于连接它们的可扩展、低延迟、大带宽的通信结构变得至关重要。 在核心较少时,总线Bus和矩阵/交叉开关Crossbar是主要的互联结构。总线可以提供较低的传输延迟…

删除安装Google Chrome浏览器时捆绑安装的Google 文档、表格、幻灯片、Gmail、Google 云端硬盘、YouTube网址链接(Mac)

删除安装Google Chrome浏览器时捆绑安装的Google 文档、表格、幻灯片、Gmail、Google 云端硬盘、YouTube网址链接(Mac) Mac mini操作系统,安装完 Google Chrome 浏览器以后,单击 启动台 桌面左下角的“显示应用程序”,我们发现捆绑安装了 Goo…

docker学习:dockerfile和docker-compose

学习如何使用dockerfile 以下内容,部分来自gpt生成,里面的描述可能会出现问题,但代码部分,我都会进行测试。 1. 需求 对于一个docker,例如python,我们需要其在构建成容器时,就有np。有以下两种方…

【项目实战】【已开源】USB2.0 HUB 集线器的制作教程(详细步骤以及电路图解释)

写在前面 本文是一篇关于 USB2.0 HUB 集线器的制作教程,包括详细的步骤以及电路图解释。 本文记录了笔者制作 USB2.0 HUB 集线器的心路历程,希望对你有帮助。 本文以笔记形式呈现,通过搜集互联网多方资料写成,非盈利性质&#xf…

java 单元测试Junit

所谓单元测试,就是针对最小的功能单元,编写测试代码对其进行正确性测试。为了测试更加方便,有一些第三方的公司或者组织提供了很好用的测试框架,给开发者使用。这里介绍一种Junit测试框架。Junit是第三方公司开源出来的&#xff0…

web系统安全设计原则

一、前言 近日,针对西工大网络被攻击,国家计算机病毒应急处理中心和360公司对一款名为“二次约会”的间谍软件进行了技术分析。分析报告显示,该软件是美国国家安全局(NSA)开发的网络间谍武器。当下,我们发现…

Spring Boot通过lombok提供的Slf4j省略日志的创建操作

上文 Spring Boot将声明日志步骤抽离出来做一个复用类中 我们写了个创建日志的公开类 但这么简单的东西 自然有人会将它写好 lombok已经 提供出了这个工具 首先 我们需要在 pom.xml 中加上这样一段代码 <dependency><groupId>org.projectlombok</groupId>…