RK3588 Debian11进行源码编译安装Pyqt5

RK3588 Debian11进行源码编译安装Pyqt5

参考链接

https://blog.csdn.net/qq_38184409/article/details/137047584?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522171808774816800222841743%2522%252C%2522scm%2522%253A%252220140713.130102334…%2522%257D&request_id=171808774816800222841743&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2allsobaiduend~default-2-137047584-null-null.142v100pc_search_result_base9&utm_term=rk3588%E5%AE%89%E8%A3%85pyqt5&spm=1018.2226.3001.4187

问题描述

在3588上跑pyqt5的demo时出现了下面的问题,才发现忘记在开发板上装pyqt5了

在这里插入图片描述

直接使用pip安装出现了下面的问题

在这里插入图片描述
查资料发现在3588这种嵌入式linux设备上安装PyQt5时会遇到兼容性问题,需要编译PyQt5源码来实现安装。

下载安装sip

不能使用pip进行安装,必须进行编译安装

注意:sip与pyqt5版本有要求,作者曾尝试过安装sip4.19.2和sip4.19.3以及sip4.19.4与pyqt5-5.15.4出现如下问题,最终使用sip4.19.25版本验证成功

在这里插入图片描述

使用命令下载 (在https://sourceforge.net/projects/pyqt/files/sip/也可以直接下载sip的压缩文件)

wget https://www.riverbankcomputing.com/static/Downloads/sip/4.19.25/sip-4.19.25.tar.gz

在这里插入图片描述

解压sip并进入

tar -zxvf sip-4.19.25.tar.gz
cd sip-4.19.25

编译sip

conda activate py38 # 切换虚拟环境
python configure.py

在这里插入图片描述

安装

sudo make 
sudo make install 

执行sudo make完成

在这里插入图片描述

执行sudo make Install完成
在这里插入图片描述

注意:出现下面这种现象是因为没有装make,执行sudo apt-get install make 安装make即可

在这里插入图片描述

记住这里面sipgen的文件夹地址,例如我的sipgen的地址为:/home/pi/sip-4.19.4/sipgen

下载并安装PyQt5

根据系统python版本下载对应的PyQt5版本 链接为:https://pypi.org/project/PyQt5/5.15.4/#history

在这里插入图片描述

注意python版本与pyqt5版本对不上时是安装不了的,如何查看版本。举个例子:我的python版本是3.8,我只需要关心我要下载的pyqt5中是否带python3.8即可

在这里插入图片描述

解压并进入pyqt5

tar -zxvf PyQt5-5.15.4.tar.gz 
cd PyQt5-5.15.4 

编译

conda activate py38 # 切换虚拟环境
python configure.py --sip=/home/pi/sip-4.19.25/sipgen/sip  # --sip的路径根据情况来

出现以下界面输入yes并回车表示接受许可证的条款。

在这里插入图片描述

输入完后便开始进行编译

在这里插入图片描述

安装 这个过程的时间有些长

sudo make
sudo make install 

两个安装过程结束如下所示:

在这里插入图片描述

验证PyQt5

在python终端中执行,如果程序通过意味着安装成功

import PyQt5

在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Java面试题--JVM大厂篇之深入了解Java虚拟机(JVM):工作机制与优化策略

引言: Java虚拟机(Java Virtual Machine,简称JVM)是Java程序员绕不开的主题。作为Java语言的执行平台,JVM不仅为Java程序提供了平台无关性,还承担了内存管理、线程管理和垃圾回收等复杂任务。了解JVM的工作…

.NET 全局过滤器

过滤器流程图: 过滤器描述: 1、Authorization Filter : 是五种Filter中优先级最高的,通常用于验证Request合不合法、用户身份是否被认证(然后授权等)、复杂的权限角色认证、登录授权等操作。 2、Resource Filter: 会在Authorization之后,Model Binding之…

[Algorithm][动态规划][二维费用的背包问题][一和零][盈利计划]详细讲解

目录 0.原理讲解1.一和零1.题目链接2.算法原理详解3.代码实现 2.盈利计划1.题目链接2.算法原理详解3.代码实现 0.原理讲解 本质仍然是背包问题,但是相较于普通的背包问题,只是限制条件多了一个而已 1.一和零 1.题目链接 一和零 2.算法原理详解 思路&…

Linux操作系统:Redis在虚拟环境下的安装与部署

Redis下载方法 最近部署项目的时候用到了Redis,自己在安装的时候也碰到了一些列问题最终安装成功,记录一下自己的安装历程。前期准备: 服务器Linux版本:Centos8.4 64位(http://isoredirect.centos.org/centos/8/isos/…

esp32s3-gc9a01-lvgl

前言 近期做了一个项目是使用esp32s3 准亿科技的TFT屏幕 该屏幕使用的驱动IC为:GC9A01 通讯方式是:4线SPI , 三线spi和四线SPI区别在于:是否使用D/C信号线 开发LCD屏幕驱动, 可以参考乐鑫官网LCD显示屏指南 SPI 一共有4种工作模式. 根据接线 , 驱动方式的不同. 可分3 , …

Spring boot 使用AbstractRoutingDataSource实现数据源动态切换

目录 一、AbstractRoutingDataSource 二、具体实现 1、pom.xml 2、新建UserMapper 3、在spring boot 启动类上添加扫描mapper注解 4、在配置文件 application.properties 中添加多个(我这里是两个)数据源的配置信息 5、集成动态数据源模块 5.1、新建注解 CurDataSource…

JAVA动态表达式:Antlr4 G4 模板 + 读取字符串表达式结构树

安装antlr4插件 创建一个后缀是g4的文件 grammar Expr;expression :( expression ) # parens| expression and expression # andOp| expression or expression # orOp| VARNAME comparison_op NUMBER # comparison| VARNAME comparison_op STRING # comparison| …

JS基础与高级应用: 性能优化

在现代Web开发中,性能优化已成为前端工程师必须掌握的核心技能之一。本文从URL输入到页面加载完成的全过程出发,深入分析了HTTP协议的演进、域名解析、代码层面性能优化以及编译与渲染的最佳实践。通过节流、防抖、重复请求合并等具体技术手段&#xff0…

人工智能GPT-4o?

对比分析 在讨论GPT-4o时,我们首先需要了解其前身,即GPT-4,以及其之前的版本。GPT系列从GPT-1到GPT-4经历了多次迭代,每一次都带来了显著的进步。 GPT-4 vs GPT-4o: 1. **参数规模:** GPT-4o在参数规模上…

Git仓库中文件的状态

0 Preface/Foreword 1 文件状态 文件包含以下4个状态: untracked,未跟踪,表示该文件在文件夹中,但是没有加入到git 仓库中进行版本管控。可以通过git add命令将该文件增加到git 仓库中。从untracked变为staged。unmodified&…

论文中表格跨页了做续表的正确方法

在上方加表格 粘贴即可 文章来源于论文中表格跨页了做续表的正确方法!论文人快来学习_哔哩哔哩_bilibili 小姐姐用WPS弄的,微软的不理想,我试了试,觉得在上面增加格子再粘贴表头,效果还行

软件工程期末复习题

目录 选择 判断 选择 下列说法中正确的是 ( B )。 A、20 世纪50 年代提出了软件工程的概念摇 B、20 世纪60 年代提出了软件工程的概念 C、20 世纪70 年代出现了客户端/ 服务器技术 D、20 世纪80 年代软件工程学科达到成熟 软件危机的主要原因是 ( D )。 A、软件工具落后…

下载使用nginx发布html自定义页面

在浏览器搜索nginx.org,然后点击download,接着点击 stable and mainline 选择自己所使用系统对应的信息后点击(我用的是CentOS,所以需要点击RHEL and derivatives) vim /etc/yum.repos.d/nginx.repo [nginx-stable] n…

SpringCloud-面试篇(二十五)

(1)Sentinel与Hystix的线程隔离有什么差别? (2)Sentinel的限流与Gateway限流有什么差别 固定窗口计数器算法,可能再其他的时间两个窗口的交界内超过了请求阈值 ,所以就有了滑动窗口算法 滑动窗…

Docker引起的漏洞问题

前言 测试环境上的中间件和java应用都是由docker进行部署的,但是因为docker的镜像访问有时候需要外网,由此引发了问题,在docker文件中 /usr/lib/systemd/system/docker.service 原有的配置为,可以看到进行了加密 ExecStart/usr/bin/dockerd --tlsverify --tlscacert/etc/docker…

上海斯歌荣获“2023年度杰出数字化转型方案提供商”奖项

为表彰上海斯歌在各行业的数字化转型事业中所做出的突出贡献,经CIO时代、新基建创新研究院专家组评审认定,授予上海斯歌“2023年度杰出数字化转型方案提供商”奖项。荣获该殊荣,不仅是业界对上海斯歌解决方案专业能力及落地实施能力的又一次认…

Java课程设计:基于ssm的旅游管理系统系统(内附源码)

文章目录 一、项目介绍二、项目展示三、源码展示四、源码获取 一、项目介绍 2023年处于信息科技高速发展的大背景之下。在今天,缺少手机和电脑几乎已经成为不可能的事情,人们生活中已经难以离开手机和电脑。针对增加的成本管理和操作,各大旅行社非常必要…

java多线程相关概念

在Java多线程编程中,有几个关键的术语需要理解: 1.线程(Thread):线程是操作系统能够进行运算调度的最小单位,它被包含在进程之中,是进程中的实际运作单位。 2.进程(Process):进程是系统进行资源分配和调度…

Git使用-gitlab上面的项目如何整到本地的idea中

场景 一般我们在开发项目或者接手某个项目时,基本都要接触Git,比如上传项目代码,下载同事给你的交接代码等等。 这是一个基本功,小小整理一下日常操作中的使用。 第一步:在 GitLab 上找到你要克隆的项目,复…

PDF操作工具

PDF的转换、编辑、删除、文本识别、添加水印等等各种操作用的越来越多,相信很多朋友都有WPS等软件的会员、可是更多的朋友是没开通WPS等软件的会员的,那么怎么办呢,给你们推荐一款pdf操作的工具。 PDF24 Creator是一款免费且流行的 PDF 解决…