百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术文章 > 正文

在 Manjaro 上玩转 Wine:解锁 Windows 程序的新姿势

ahcoder 2025-05-09 16:36 9 浏览

在 Linux 的世界里,Manjaro 以其友好的用户界面和丰富的软件源受到众多用户的喜爱。

但有时,我们还是会遇到需要运行 Windows 程序的情况,这时候 Wine 就派上用场了。

今天,咱就来唠唠在 Manjaro 上如何使用 Wine,以及 Wine 10 版本带来的惊喜更新,还有利用 winetricks 快速安装 Windows 程序的小妙招。

一、Wine 是什么?能吃吗?

Wine,可不是让你拿来喝的酒,它是 “Wine Is Not an Emulator” 的缩写,意思是它并非模拟器,而是一个神奇的兼容层。

通过它,你可以在 Linux、macOS 和 BSD 等类 Unix 操作系统上运行 Windows 应用程序。

它的工作原理是把 Windows API 调用翻译成 POSIX 调用,从而实现 Windows 程序在其他系统上的运行,是不是很厉害?

二、Wine 10 版本更新:性能、兼容双提升

Wine 团队发布的 10.0 稳定版,那可是带来了超过 6000 项更新,诚意满满!

(一)架构优化

Wine 10 全面支持 ARM64EC 架构,开发者可以构建混合 ARM64X 模块,在安装文件中融合 ARM64EC 和 ARM64 代码 ,虽说目前依赖实验性的 LLVM 工具链,但随着 LLVM 20 的发布,支持会更加简单。而且还引入了 64 位 x86 模拟,利用 ARM64EC 让 Wine 的内部进程原生运行,减少了资源密集型模拟的需求,程序运行起来更流畅。

(二)高 DPI 缩放改进

对于高分屏用户来说,这绝对是个好消息!Wine 10 重点改进了高 DPI 缩放功能,能自动调整非 DPI 感知应用程序,在高分辨率显示器上呈现出更佳的视觉效果。要是你觉得还不够,还能通过兼容性标志自定义全局或每个应用程序的缩放行为,想怎么调就怎么调。

(三)图形堆栈增强

在图形方面,Wine 10 支持 X11 下的 Vulkan 子窗口渲染,提高了 Vulkan 1.4.303 兼容性,改善了 GdiPlus 中的字体链接,优化了应用程序 3D 渲染。以后玩 3D 游戏或者运行图形软件,效果肯定更上一层楼。



(四)显示配置工具

Wine 10 新增了显示配置工具,用户可以方便地检查和修改设置,包括虚拟桌面分辨率。对 Linux 用户而言,Wayland 图形驱动现在默认启用,不过除非明确禁用,X11 仍然优先。Wayland 驱动程序支持 OpenGL 和改进的弹出窗口放置,更适合现代 Linux 桌面。

三、Manjaro 上用 winetricks 快速安装 Windows 程序

在 Manjaro 上使用 Wine 安装 Windows 程序,有时候会因为缺少各种依赖和组件而变得麻烦,这时候 winetricks 就来救场啦!它是一个用于在 Wine 环境中方便地安装各种 Windows 应用程序和组件的脚本工具。

(一)安装 winetricks

打开终端,输入以下命令安装 winetricks:

sudo pacman -S winetricks

(二)安装 Windows DLL 或组件

比如你想安装一些常用的组件,像 DirectX、.NET Framework 等,可以这样操作:

运行 winetricks 命令:

winetricks

这时会弹出一个窗口,你可以选择默认的 Wine 容器,然后在列表中选择你需要安装的组件,比如 d3dx10_43、dotnet11、dotnet20、gdiplus 等 ,勾选好后点击 “确定”,winetricks 就会自动帮你下载并安装这些组件。

(三)解决中文显示问题

有些小伙伴可能会遇到中文显示乱码或者出现方框的情况,别慌,我们可以利用 winetricks 安装中文字体来解决。在终端输入:

LC_ALL="zh_CN.UTF8" winetricks cjkfonts

这样就安装了 CJK 字体,用于支持中日韩文字显示,中文就能正常显示啦!

(四)安装 Windows 程序

安装好所需组件和字体后,就可以安装 Windows 程序了。如果你下载的是.exe 格式的安装文件,直接在终端输入:

wine your_program.exe

如果是.msi 格式的安装包,则输入:

wine msiexec /i install.msi

按照安装向导的提示一步步操作,就能顺利安装 Windows 程序啦!

在 Manjaro 上使用 Wine 结合 winetricks,能让我们轻松运行 Windows 程序,再加上 Wine 10 版本的强大更新,体验更是大幅提升。

相关推荐

Redis内存这样优化,性能炸裂(redis内存占用和优化)

一、背景使用过Redis的同学应该都知道,它基于键值对(key-value)的内存数据库,所有数据存放在内存中,内存在Redis中扮演一个核心角色,所有的操作都是围绕它进行。我们在实际维护过...

一文带你详解Nginx/OpenResty,Nginx Lua编程基础,学不会别怪我

NginxLua编程基础OpenResty通过汇聚各种设计精良的Nginx模块(主要由OpenResty团队自主开发)将Nginx变成一个强大的通用Web应用平台。这样,Web开发人员和系统工程师可...

你真的懂Spring Cloud+Nginx秒杀实战,Nginx高性能秒杀和限流吗?

Nginx高性能秒杀和限流从性能上来说,内部网关Zuul限流理论上比外部网关Nginx限流的性能会差一些。和Zuul一样,外部网关Nginx也可以通过Lua脚本的形式执行缓存在Redis内部的令牌桶限...

在群晖NAS上搭建网站的完整指南(群晖nas部署)

群晖NAS不仅可以存储数据,还能作为功能完善的网站服务器使用。以下是搭建网站的详细步骤:一、准备工作确认NAS型号:确保您的群晖NAS支持WebStation(大多数x86机型都支持)域名准备(可选...

tomcat+redis+nginx的session共享

上两节中,我们使用nginx+tomcat+memcached+MSM实现session共享,如何有需要对nginx负载均衡方面的知识需要了解的话,可以关注我的头条号:一点热。然后阅读之前的文章。同时...

终于靠这篇文章学透了Nginx/OpenResty详解,NginxLua编程

NginxLua编程经过合理配置,Nginx毫无疑问是高性能Web服务器很好的选择。除此之外,Nginx还具备可编程能力,理论上可以使用Nginx的扩展组件ngx_lua开发各种复杂的动态应用。不过...

从需求到上线:PHP+Uniapp校园圈子系统源码的架构设计与性能优化

一、需求分析与架构设计1.核心功能需求用户体系:支持手机号/微信登录、多角色权限(学生、教师、管理员)。圈子管理:支持创建/加入兴趣圈子(如学术、电竞)、标签分类、动态发布与审核。实时互动:点赞、评...

六星教育PHP大神进阶班怎么样?值不值得去听?

点进这篇文章的人可能现在正面临着几个很难选择的问题,比如学PHP要不要报培训班?或者是该怎样选择PHP课程?又或是六星教育的PHP大神进阶班好不好,能不能去?在这里就给你们都一个一个解答了!首先,要...

Centos8搭建Java环境(JDK1.8+Nginx+Tomcat9+Redis+Mysql)

一、开篇1.1目的每次换新的服务器,都要找资料配下环境,所以我写这篇文章,重新梳理了一下,方便了自己,希望也能给大家带来一些帮助。安装的软件有:JDK1.8+Nginx+Tomcat9+...

PHP游戏陪玩APP小程序家政系统项目复盘:从需求分析到上线运维

一、需求分析阶段1、核心功能模块用户模块:支持用户注册、登录、身份认证(区分陪玩师与普通用户)、个人信息管理。订单模块:实现下单、接单、订单状态流转(待支付、进行中、已完成、已取消)的全流程管理。技能...

我采访了一位 Pornhub 工程师,聊了这些纯纯的话题

成人网站在推动Web发展方面所起到的作用无可辩驳。从突破浏览器的视频能力限制,到利用WebSocket推送广告(防止被广告拦截器拦截),你必须不断想出各种聪明的办法,让自己处在Web技术创...

硬核拆解:如何用Redis+Nginx打造高可用网关集群?

在云原生架构中,API网关作为流量中枢,其部署架构常采用无状态节点+集群化设计,前端通过F5或Nginx实现四层/七层负载均衡。数据库可选用Oracle或MySQL,结合Redis实现分布式缓存,例如...

无技术门槛,轻松搞定一个好用的企业网盘——可道云teamOS

在数字化时代,企业数据的共享与协作是企业快速发展的关键。但是对于没有专业技术人员的企业来说,搭建一个企业网盘实在是有点复杂。有此困扰的公司,不妨试一下可道云teamOS。能一键搭建的网盘系统teamO...

Docker安装及mysql、redis实战(dockerfile安装redis)

1.Docker安装确定CentOS7及以上版本cat/etc/redhat-release卸载旧版本yumremovedocker\docker-client\docker-clien...

云原生(十七) | Kubernetes 篇之深入了解 Deployment

深入了解Deployment一、什么是Deployment一个Deployment为Pods和ReplicaSets提供声明式的更新能力。你负责描述Deployment中的目标状...