当前位置: 首页 > news >正文

Wine Ubuntu 调用 Windows 应用

Wine介绍

Wine 是一个允许在 Unix 上运行 Microsoft Windows 程序 (包括 DOS、Windows 3.x、Win32 和 Win64 可执行文件) 的程序。它包含一个程序加载程序,用于加载和执行 Microsoft Windows 二进制文件,以及一个名为 Winelib 的库,该库使用其 Unix、X11 或 Mac 等价物实现 Windows API 调用。该库还可用于将 Windows 代码移植到本地 Unix 可执行文件中。

官方库: WineHQ 官方仓库

安装

在 Wine 11 中,官方已经全面完成了全新的 WoW64 架构。新版 Wine 已经可以在纯 64 位的 Linux 环境中,极其平滑地直接运行 32 位甚至 16 位的 Windows 程序,从技术底层上摆脱了对 Linux 32 位运行库的依赖,但低版本需手动配置。

环境准备

# 更新下系统 sudo apt update && sudo apt upgrade -y # 激活 32 位架构支持 sudo dpkg --add-architecture i386 #添加 WineHQ 官方仓库 # WineHQ 的 GPG 密钥,确保软件包的安全性 curl -fsSL https://dl.winehq.org/wine-builds/winehq.key | sudo gpg --dearmor -o /usr/share/keyrings/winehq.gpg # 创建仓库配置文件 cat <<EOF | sudo tee /etc/apt/sources.list.d/winehq.sources Types: deb URIs: https://dl.winehq.org/wine-builds/ubuntu Suites: $(lsb_release -cs) Components: main Architectures: amd64 i386 Signed-By: /usr/share/keyrings/winehq.gpg EOF # 验证 APT 包管理器是否成功识别到了 WineHQ 仓库 # 这里可以看到Ubuntu 系统能适配的wine 版本列表 apt-cache policy winehq-stable

正式安装wine

# 更新软件包列表 sudo apt update # 安装 Wine 11 稳定版 #winehq-stable 稳定版 经过充分测试,运行最为可靠,适合绝大多数追求日常稳定使用的普通用户。 #winehq-staging 预发布版 功能尝鲜,包含一些尚未合并到主线的实验性补丁,稳定性介于稳定版与开发版之间。 #winehq-devel 开发版 包含了最新功能,但可能存在不稳定的情况,适合开发者或极客玩家。 sudo apt install --install-recommends winehq-stable # 安装后检查 能正常输出版本 wine --version

初始化 Wine 环境

需要运行「配置工具」来初始化 Wine 环境。这一步会自动生成必要的目录结构,并下载 Mono 等额外组件(Wine 依赖这些组件来运行 .NET 应用程序)

winecfg

会弹出图形界面提示 ,安装 wine-mono 相关依赖

环境初始化好后会自动弹出 Wine 设置 面板。你可以在这里选择要模拟的 Windows 系统版本

Winetricks 优化体验

Winetricks 是一个极为实用的辅助脚本,它能帮你一键安装各类 Windows 运行库、核心组件以及字体,大幅提升 Wine 的开箱体验和软件兼容性

# 安装 sudo apt install winetricks # 通过 Winetricks 轻松搞定各种缺失的 Windows 组件 例如 winetricks vcrun2022 # 安装 Visual C++ 运行库 winetricks allfonts corefonts cjkfonts # 安装常用字体(解决中文乱码) winetricks d3dx9 d3dx10 # 安装 DirectX,提升兼容性与游戏性能

Wine 环境管理

Wine 采用「前缀」(Prefix)机制来隔离不同的应用程序环境,相当于一个个独立的沙盒容器。默认情况下,主环境路径位于~/.wine

#为某个应用独立运行环境 WINEPREFIX=~/.custom_wine_prefix winecfg # 建立一个全新的 Wine 环境,并自动唤出 Wine 设置 面板

注:如果exe是多实例运行,建议采用前缀管理,否则 它们对应的win-server 是同一个,只有全部退出时才能真正退出

  • 在 Wine 11.x 中,默认的 64 位容器已经能完美兼容 32 位应用了。官方已正式弃用WINEARCH=win32的纯 32 位前缀创建方式。
  • 如果有特殊的兼容性需求,可以设置WINEARCH=wow64来强制旧版容器以新的 WoW64 模式运行

中文乱码处理

# 启动或配置环境时加上LC_ALL=zh_CN.UTF-8环境变量,来强制声明中文支持 WINEPREFIX=~/wine_prefix LC_ALL=zh_CN.UTF-8 winecfg

卸载

# 简单卸载 sudo apt remove winehq-stable # 卸载稳定版 sudo apt remove winehq-staging # 卸载预发布版 sudo apt remove winehq-devel # 卸载开发版 #深度卸载 # 1. 卸载所有 Wine 相关包 sudo apt remove --purge wine* winetricks* # 2. 清除残留的配置文件(核心步骤!) rm -rf ~/.wine ~/.cache/wine ~/.local/share/wine # 3. 自动清理无用依赖 sudo apt autoremove # 4. 确认卸载完成(无输出则说明已清理干净) wine --version # 5. 移除软件源配置 sudo rm /etc/apt/sources.list.d/winehq.sources # 6. 清理导入的密钥 sudo rm /etc/apt/sources.list.d/winehq.sources
http://www.cnnetsun.cn/news/4250800.html

相关文章:

  • 2024请收好这一份全面且详细的AI产品经理从业指南,错过会后悔!!
  • 资深开发 / 架构师|3 个月可执行学习实践计划表
  • 中年中产程序员春节低成本自驾游:从西安出发到深圳阳江海陵岛,海南岛10天深度度假游(1)-- 海陵岛
  • 【AI大模型】写给小白的大模型应用科普:RAG篇
  • 存量系统迁移,用小变更保持主干可用
  • RustDesk部署到linux(自建服务器)
  • python的图论工业场景模拟第三篇:电力网架连通分量与孤岛区域诊断,任务解析电力网络图,找出因开关跳闸形成的孤立供电区(连通分量),图建模说明,无向图,节点=配电节点,边=闭合的开关。
  • 设计开发协作的令牌化落地方法
  • 万字长文!一文了解归一化:从Transformer归一化到主流大模型归一化的演变!
  • AutoClicker
  • 小白学大模型:提示词工程(Prompt)与Agent,简单易懂,轻松拿捏!!
  • 2026年亲测最值得推荐的5款降AI率工具
  • 2026年云台摄像头口碑榜 高好评家用产品特点与选购参考
  • Grok刷屏解析:从聊天模型到AI执行体的工程接入指南
  • 拖入 main.dat 就开始改:动物森友会存档编辑五步上手
  • 【收藏级干货】用AI大模型实现量化策略:内联编辑器实战教程
  • AgentClinic:模拟临床医疗环境的多模态大模型智能体评估基准,建议收藏起来慢慢看!!
  • 如何3分钟上手DSH Desktop:从下载macOS安装包到第一次官方DSH会话
  • 【AI大模型】RL反常识研究,直接给LLM喂答案比提供详细步骤更有用!
  • AI 大模型应用架构演进: LLM → RAG → AI Workflow → AI Agent
  • pure-python-adb 插件体系深度解析:6大内置插件监控CPU、内存、电池与流量
  • 为什么选择cleye而非commander和yargs?Node.js CLI库横评对比清单
  • 微服务拆分前先算清治理代价
  • Chirpy SDK 开发者指南:如何用几行代码管理评论项目
  • Flask-REST-JSONAPI 数据层深入剖析:SQLAlchemy CRUD 扩展与 pre/post 钩子的灵活玩法
  • 可复现自动驾驶RL实验的关键:gym-carla同步模式与固定时间步实战
  • GoNorth导出引擎深度解析:Scriban模板、占位符与Export Snippets原理揭秘
  • KISS-Matcher参数调优完全指南:voxel_size、robin_noise_bound等10个关键参数如何选
  • 汽车 IGBT 封装真空焊接设备实操教程与要点解析
  • 10分钟快速上手OK?:从安装到跑通第一个程序的完整教程