Ubuntu通过WSL2与VSCode配置PySide6开发桌面应用
本文梳理了在Windows端利用WSL2运行Ubuntu,并基于此环境搭建PySide6桌面应用开发流程的方法。内容包含虚拟环境隔离、图形界面依赖修复、VSCode远程连接配置以及解释器绑定操作,可直接用于实际工程调试。
环境准备与虚拟环境搭建
在实际开发中,为保持系统纯净并避免依赖冲突,建议先在WSL的Ubuntu发行版中安装基础工具链,并通过Python虚拟环境管理第三方库。
第1步:安装基础依赖并创建虚拟环境
目的:获取pip工具并解决PEP 668安全限制。
入口:WSL终端
动作:执行以下命令更新源并安装pip:
sudo apt update
sudo apt install python3-pip
直接使用 pip3 install PySide6 会触发 externally-managed-environment 报错。此时需创建虚拟环境:
参数设置:python3 -m venv ~/pyside6_venv
若提示
ensurepip is not available,说明当前Ubuntu缺少对应的venv模块。可依次执行:# 查看当前系统Python版本替换对应数字(如 12) sudo apt install python3.12-venv -y随后重新创建并激活环境:
source ~/pyside6_venv/bin/activate
第2步:安装PySide6核心库
目的:在虚拟环境中下载Qt6绑定库。
动作:激活环境后执行安装:
pip install PySide6
成功安装后终端将返回 Successfully installed PySide6-xxx ... 字样,表示框架已就绪。
配置WSL图形界面支持
WSLg 允许Linux GUI程序直接显示在Windows桌面上,但需要补充X11与Qt运行时依赖以保障稳定渲染。
第3步:检查WSL版本与安装GUI依赖
目的:确认运行环境为WSL 2,并补齐底层图形库。
入口:WSL终端或CMD/Powershell
动作:核对版本:
wsl --version
wsl -l -v
若列表显示 Version 为 1,需转换至WSL 2:wsl --set-version <你的发行版名称> 2
参数设置:安装通用图形依赖(规避新版Ubuntu中 libgl1-mesa-glx 失效的问题):
sudo apt update && sudo apt install -y \
python3-pip \
python3-venv \
libx11-6 \
libxcb1 \
libxkbcommon-x11-0 \
libgl1 \
libgl1-mesa-dri \
libqt6gui6 \
libqt6core6 \
libqt6widgets6
第4步:验证图形显示功能
目的:确认GUI通道畅通。
动作:安装轻量测试工具并启动:
sudo apt install -y x11-apps
xeyes
若Windows桌面弹出跟随鼠标的眼睛窗口,则说明跨平台图形传输链路正常。
使用VSCode连接WSL进行开发
Windows端的Visual Studio Code可通过官方插件直连WSL文件系统,提供完整的编码与调试体验。
第5步:安装插件并连接Ubuntu环境
目的:打通Windows IDE与Linux工作区。
入口:Windows端VSCode → 扩展面板(Ctrl+Shift+X)
动作:搜索并安装微软官方插件 Chinese (Simplified) 与 Remote - WSL。安装完成后重启客户端。

使用快捷键 Ctrl+K Ctrl+O 打开文件夹,导航至WSL内的项目路径(如 /home/<用户名>/pyside6_demo)。若目录为空,可在左侧资源管理器右键新建文件夹,并在其中创建 main.py。


第6步:配置解释器并运行测试代码
目的:让IDE识别虚拟环境中的解释器。
动作:在 main.py 中粘贴基础窗口代码:
import sys
from PySide6.QtWidgets import QApplication, QMainWindow, QLabel, QPushButton, QVBoxLayout, QWidget
class MainWindow(QMainWindow):
def __init__(self):
super().__init__()
self.setWindowTitle("WSL PySide6 测试")
self.setFixedSize(400, 200)
central = QWidget()
self.setCentralWidget(central)
layout = QVBoxLayout(central)
self.label = QLabel("Hello WSL + PySide6!")
layout.addWidget(self.label)
btn = QPushButton("点击我")
btn.clicked.connect(lambda: self.label.setText("Windows 显示 WSL 窗口!"))
layout.addWidget(btn)
if __name__ == "__main__":
app = QApplication(sys.argv)
win = MainWindow()
win.show()
sys.exit(app.exec())
首次运行可能提示未安装Python扩展。打开扩展面板搜索 Python,点击 在 WSL:Ubuntu 中安装,按提示重载窗口。




因默认指向系统全局Python,需显式切换至刚才创建的虚拟环境。按下 Ctrl+Shift+P 调出命令面板,输入 Python: Select Interpreter 并执行。

在列表中选择路径包含 pyside6_venv/bin/python 的条目即可完成绑定。

保存文件后点击顶部的运行按钮或按 F5,Windows桌面将直接弹出PySide6窗口,交互逻辑完全生效。

总结
通过上述步骤,可以在非原生Ubuntu桌面上安全隔离地运行PySide6,并利用VSCode的Remote功能获得无缝的开发体验。实际项目中只需遵循相同的依赖管理与解释器配置流程即可展开深度编码。以上就是通过WSL2与VSCode配置PySide6开发桌面应用的详细内容,更多关于Ubuntu底层环境与Python跨平台调试的资料请关注本站其它相关文章!
本站声明
本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。













