一、PySide2的安装
1.1、创建python虚拟环境
# 采用pyenv创建3.7.16版本python的虚拟环境venv-pyside2-3.7.16
pyenv virtualenv 3.7.16 venv-pyside2-3.7.16
1.2、安装pyside2
# 激活虚拟环境
pyenv activate venv-pyside2-3.7.16
# pip 安装
pip install PySide2
# 查看已安装列表
pip list
二、Pycharm配置PySide2相关外部工具(pyside2-designer/pyside2-uic/pyside2-rcc)
2.1、 新增 Designer外部工具
- 打开pycharm =>settings =>Tools=>External Tools ,点击“+”添加tool,如下图所示添加QT Designer开发工具,随后保存配置:
- 点击pycharm菜单栏 => Tools => External Tools => QtDesigner-PySide2-python3.7.16 ,尝试打开designer界面,terminal报以下错误
error while loading shared librarieds: libQt5DesignerComponents.so.5: cannot open shared object file: No such file or directory
:
- 执行以下命令查看本机环境是否已有该缺失的动态库文件:
locate libQt5DesignerComponents.so.5
- 本机在刚创建的虚拟环境目录中已存在该动态库,则需要将库所在目录路径添加到系统库查找路径中:
- 方式一
libQt5DesignerComponents.so.5确实已存在,将该库文件所在目录加入到共享库的配置文件中,即把libQt5DesignerComponents.so.5所在的目录加入到 /etc/ld.so.conf 中,或者在 /etc/ld.so.conf.d/ 下新建一文件,如 XXX.conf ,其内容是libQt5DesignerComponents.so.5所在的目录的绝对路径,保存后,在终端执行以下命令:
/sbin/ldconfig -v
ldconfig
以上命令将文件/etc/ld.so.conf列出的路径下的库文件缓存到/etc/ld.so.cache中,当修改/etc/ld.so.conf增加了库的新查找路径时,需要运行一下ldconfig,使包括新增的库在内的所有库文件都被缓存到文件/etc/ld.so.cache中,否则可能查在不到新增加的库文件。 - 方式二
修改配置文件,如~/.bashrc
或.bash_profile
或/etc/profile
,或在/etc/profile.d
目录下新建一文件,如 XXX.sh ,在该文件中将libQt5DesignerComponents.so.5所在的目录的绝对路径添加到LD_LIBRARY_PATH环境变量,普通用户可直接修改~/.bashrc
或.bash_profile
,修改仅对当前用户有效。root用户可修改/etc/profile
,或在/etc/profile.d
目录下创建文件,对所有用户都有效;
下面以创建/etc/profile.d/pyside2.sh文件为例:
然后,在pyside2.sh文件中添加如下内容:# root用户创建pyside2.sh文件 touch /etc/profile.d/pyside2.sh vim /etc/profile.d/pyside2.sh
保存并退出后,重新打开终端生效。export LD_LIBRARY_PATH=/home/MQL-260137/.pyenv/versions/3.7.16/envs/venv-pyside2-3.7.16/lib/python3.7/site-packages/PySide2/Qt/lib:$LD_LIBRARY_PATH
- 方式三
直接修改pyside2-designer执行脚本文件,在虚拟环境目录下找到pyside2-designer脚本文件,即:/home/MQL-260137/.pyenv/versions/3.7.16/envs/venv-pyside2-3.7.16/bin/pyside2-designer
并用编辑器打开:
修改前:
修改后#!/home/MQL-260137/.pyenv/versions/3.7.16/envs/venv-pyside2-3.7.16/bin/python3.7 # -*- coding: utf-8 -*- import re import sys from PySide2.scripts.pyside_tool import designer if __name__ == '__main__': sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) sys.exit(designer())
#!/home/MQL-260137/.pyenv/versions/3.7.16/envs/venv-pyside2-3.7.16/bin/python3.7 # -*- coding: utf-8 -*- import os import re import sys import pathlib import PySide2 from PySide2.scripts.pyside_tool import designer if __name__ == '__main__': pyside2_install_path = pathlib.Path(PySide2.__file__).parent # 配置临时环境变量,只在代码运行时生效 os.environ['LD_LIBRARY_PATH'] = str(pyside2_install_path / "Qt/lib") sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) sys.exit(designer())
- 方式一
- 按以上三种方式之一配置查在路径或环境变量后即可正常打开Qt Designer。
2.2、 新增 UIC外部工具
- 打开pycharm =>settings =>Tools=>External Tools ,点击“+”添加tool,如下图所示添加UI文件转换为python代码文件的工具,随后保存配置:
2.3、 新增 RCC外部工具
- 打开pycharm =>settings =>Tools=>External Tools ,点击“+”添加tool,如下图所示添加资源转换工具,随后保存配置:
三、安装配置完成
以上为Rocky Linux9.2采用pyenv虚拟环境安装PySide2及其在Pycharm中的配置的详细内容。