代码编织梦想

参考文章链接:

1、MacOS M1芯片安装PyQt5的方法
2、【MacM1+PyCharm+PyQt5】记录一次Pycharm有Pyqt5环境但无代码提示的解决流程

安装pyqt5

我的环境是mac m1 + miniconda3 + python3.9 + pycharm,直接使用pip install pyqt5不行。所以需要使用brew安装。
1、使用homebrew安装

brew install pyqt@5

2、找到pyqt5包的位置
m1下,brew会将东西安装在/opt/homebrew/Cellar下请添加图片描述
我的pyqt5的库的路径为
/opt/homebrew/Cellar/pyqt@5/5.15.9/lib/python3.9/site-packages
里面有
请添加图片描述

3、移动库到虚拟环境中
将pyqt@5/版本号/lib/python3.9/site-packge中所有的文件复制到虚拟环境的site-packge中,也就是找到虚拟环境的路径。
可以使用conda env list查看虚拟环境路径。
我的路径为
/Users/Lemon/miniconda3/envs/py39/lib/python3.9/site-packages
复制完后测试一下是否安装完成。
终端打开python,使用import PyQt5看是否报错。
4、pycharm使用
创建项目不用多说,随便写段代码测试一下请添加图片描述
可以看到PyQt5不报红,但是QtWidgets会报红,这个问题后面会解决。

运行一下出现问题1

请添加图片描述解决方案:

数了一下有几个…/,结果发现他是去我的用户目录下找opt,再从opt中去找pyqt需要的库。。。。希望有大佬能够解决一下我这个疑问,为什么他会去这里找。。

在他找库的路径,也就是我的用户目录下,软连接一个opt

ln -s /opt/homebrew/opt /Users/Lemon

这句话的意思是在我的用户目录下放一个opt的软连接,这样子就能找到相对应的库,创建之后可以正常运行
请添加图片描述

问题2

可以看到在QtWidgets下面还是有红色波浪线,并且写代码不会有提示,这肯定不行。所以需要安装一个叫PyQt5-stubs的库。但是在目前虚拟环境下pip不到这个库。
请添加图片描述

解决方案:
在pycharm中创建一个Virtualenv项目
在这里插入图片描述
·安装Pyqt5—stubs(使用Virtualenv就可以找得到这个库)
在这里插入图片描述
安装后,从这个测试项目的lib中找到这个库
请添加图片描述
将stubs相关的文件夹复制到虚拟环境的site-packges中。

请添加图片描述
然后打开原项目请添加图片描述
不报红,且出现代码提示,大功告成!

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/ShineStellar/article/details/132928771

macos环境变量source生效但重启后又失效-爱代码爱编程

https://blog.csdn.net/dxk539687357/article/details/127942044 .bash_profile 和 .zshrc 都是macos系统重环境变量配置的文件,但是两者有不同

c++&qt day4-爱代码爱编程

仿照string类,完成myString类 #include <iostream> #include <cstring> using namespace std; class myString { private: char *str; //记录c风格的字符串 int si

基于qt5的计算器设计-爱代码爱编程

Qt5的信号与槽 ✨描述:信号槽是 Qt 框架引以为豪的机制之一。所谓信号槽,实际就是观察者模式(发布-订阅模式)。当某个事件发生之后,比如,按钮检测到自己被点击了一下,它就会发出一个信号(signal)。这种发出是没

c++(qt)软件调试---gcc编译参数学习-程序检测(13)-爱代码爱编程

C++(Qt)软件调试—GCC编译参数学习-程序检测(13) 文章目录 C++(Qt)软件调试---GCC编译参数学习-程序检测(13)1、前言1.1 概述1.2 测试环境 2、GCC编译警告选项1.

-爱代码爱编程

问题 (1)Windows系统里,文件每行结尾是'<回车><换行>', '\r\n' (2)Mac系统里,       文件每行结尾是'<回车>',即'\r' (3)Un

2023/09/15 qt day1-爱代码爱编程

代码实现图形化界面 #include "denglu.h" #include "ui_denglu.h" #include <QDebug> #include <QIcon> #include <QLabel> #include <QLineEdit> #include <QPushButton>

day48:qt day1,qt常用组件-爱代码爱编程

#include "mainwindow.h" #include "ui_mainwindow.h" MainWindow::MainWindow(QWidget *parent) : QWidget(parent) , ui(new Ui::MainWindow) { this->setFixedSize(500,500)

【面试刷题】——qt使用的编译器-爱代码爱编程

Qt可以使用多种不同的编译器,具体取决于你的开发环境和目标平台。以下是一些常见的Qt支持的编译器: MinGW: MinGW(Minimalist GNU for Windows)是Windows下的一个轻量级开发工具集

qt 信号与槽-爱代码爱编程

        QT核心便是信号与槽,通过信号将数据在界面和类中,在本类和其他类中发送和接收。信号负责发送数据(也可以单纯的发送信号),槽负责接收。 系统自定义的槽          在相应组件上单机右键转到槽即可看见这列表,例如:一般按钮事件的点击(clicked),松开(released),按下(pressed)等。选择相应的槽,那么它会自动帮你

qt5开发及实例v2.0-第一章qt概述及qt5的安装-爱代码爱编程

Qt5开发及实例V2.0-第一章-Qt概述及Qt5的安装 第一章-Qt概述1.1 什么是Qt1.2 Qt 5的安装1.2.1 下载安装Qt 51.2.2 运行Qt 5 Creator1.2.3 Qt 5开发环境

minitab express for mac(数据分析软件)附破解补丁 v1.5.0 支持m1-爱代码爱编程

Minitab Express是一款专为Mac用户设计的数据分析和统计软件。它提供了一套全面的工具和功能,用于分析数据、执行统计计算和生成可视化。 下载:Minitab Express for Mac(数据分析软件)附破解补丁 以下是 Minitab Express for Mac 的一些主要功能: 1. 数据导入和操作:Minitab Expr

qt5开发及实例v2.0-第二章qt模板库工具类及控件-爱代码爱编程

Qt5开发及实例V2.0-第二章Qt模板库工具类及控件 第2章 Qt 5模板库、工具类及控件2.1 字符串类2.1.1 操作字符串2.1.2 查询字符串数据2.1.3 字符串的转换 2.2 容器类2.2

qt超时机制设计-爱代码爱编程

解决的问题: 在上位机软件开发过程中,你难免不得等待下位机上传的数据,当没有信息上传,超时机制就能保证上位机不会卡死。那么在实际使用中,一般我们怎么添加呢? 如何实现: Qt中自带QTimer类,如果你只是简单的做个定时器,直接到主线程GUI线程中进行定时炒作即可,但是经常会卡主界面,那么我们需要怎么在子线程中进行定时器开启呢? 代