2024年如何在Ubuntu上安装PyQt4以运行旧Python项目?
在Kubuntu 22.04上运行旧PyQt4+Python3项目的解决方案
方法一:源码编译PyQt4适配Python3环境
Ubuntu 22.04的系统库仍支持编译PyQt4,可按以下步骤操作:
- 安装编译依赖:
sudo apt update && sudo apt install build-essential python3-dev qt4-dev-tools libqt4-dev libqt4-core libqt4-gui - 安装适配PyQt4的SIP(需用4.19.x版本,PyQt4依赖该版本SIP):
下载SIP 4.19.x源码包并解压,进入目录执行:python3 configure.py make sudo make install - 编译安装PyQt4:
下载适配Python3的PyQt4源码包并解压,进入目录执行:python3 configure.py --confirm-license make -j$(nproc) sudo make install - 安装项目依赖:
完成后即可直接运行项目代码。pip install numpy matplotlib
方法二:用Ubuntu 16.04 Docker镜像配置GUI转发
Ubuntu 16.04原生支持Python3.5和PyQt4,配合X11转发可在容器内运行GUI应用:
- 拉取Ubuntu 16.04镜像:
docker pull ubuntu:16.04 - 创建并运行容器,挂载项目目录并配置X11转发:
docker run -it --rm \ -e DISPLAY=$DISPLAY \ -v /tmp/.X11-unix:/tmp/.X11-unix \ -v /你的项目本地路径:/project \ ubuntu:16.04 - 在容器内安装依赖:
apt update && apt install python3-pyqt4 python3-numpy python3-matplotlib - 进入项目目录运行代码:
容器内的GUI会直接显示在Kubuntu桌面,此时可截图保存。cd /project python3 你的主脚本.py
方法三:使用Ubuntu 16.04虚拟机
若编译或Docker配置繁琐,可直接搭建虚拟机:
- 下载Ubuntu 16.04镜像,用VirtualBox/VMware创建虚拟机。
- 在虚拟机内安装依赖:
sudo apt install python3-pyqt4 python3-numpy python3-matplotlib - 将项目文件复制到虚拟机,运行代码后截图导出即可。
内容的提问来源于stack exchange,提问作者Hamza Abbad
相关产品推荐
相关产品推荐

