如何在基于 Debian 的系统上从源代码安装 Wine

2023-11-11

作为 Windows 程序的狂热用户,您可能会发现有时需要在 Ubuntu 系统上使用特定程序。尽管还有其他选项(例如虚拟机或 Wine 等程序,它有助于在 Linux 上运行 Windows 程序),但它们涉及一些工作,而且并不是运行这些程序的最无缝方式。幸运的是,WineHQ 是在 Ubuntu 计算机上运行 Windows 程序的出色解决方案。

在本文中,您将学习如何在 Ubuntu 上安装 WineHQ,以便您可以在需要时轻松运行那些讨厌的 Windows 程序。本教程包括:

  • 什么是葡萄酒?
  • 下载wine源代码
  • 从源代码编译并安装 wine
  • 使用 wine 在 Linux 上运行 Windows 程序
  • 结论

让我们开始安装:

什么是葡萄酒?

Wine 代表 Wine Is Not an Emulator,是一种在其他操作系统上运行 Windows 程序的方法。它允许 Windows 程序在 Linux 和 macOS 上运行,而无需 Windows 许可证或虚拟机。该程序自 90 年代初就开始开发,多年来不断发展,成为在其他操作系统上运行 Windows 程序的非常可靠的方式。话虽如此,使用 Wine 在其他操作系统上运行 Windows 程序有一些注意事项。

例如,可能并不总是能够运行计算机上的所有程序。此外,这些程序的运行速度可能并不总是像在 Windows 上运行时那样快。也就是说,Wine 是一个很棒的免费解决方案,可以在必要时在 Ubuntu 计算机上运行 Windows 程序。

第1步:系统准备

从源代码构建Wine需要构建必需的工具、gcc编译器和大量的开发包。

使用 sudo 特权帐户打开终端并首先更新 apt 缓存:

sudo apt update 

然后在您的系统上安装所需的软件包。

sudo apt install build-essential gcc-multilib gcc-mingw-w64 libasound2-dev libpulse-dev libdbus-1-dev libfontconfig-dev libfreetype-dev libgnutls28-dev libgl-dev libunwind-dev libx11-dev libxcomposite-dev libxcursor-dev libxfixes-dev libxi-dev libxrandr-dev libxrender-dev libxext-dev bison flex 

第2步:下载Wine源代码

安装所有必需的软件包后,从其官方网站下载最新的 Wine 源代码。在撰写本教程时,Wine 8.0 是最新版本。

使用以下命令下载 Wine 源代码并解压:

wget https://dl.winehq.org/wine/source/8.0/wine-8.0.tar.xz 
tar -Jxf wine-8.0.tar.xz -C /tmp 

所有文件将被提取到/tmp/wine-8.0目录。

第三步:编译Wine源代码

Use the ./配置脚本根据系统硬件准备安装源。这将创建用于编译的 Makefile 并根据您的系统设置 Wine 的安装环境。

切换到 wine 源代码目录cd命令:

cd /tmp/wine-8.0 

然后配置源代码./配置脚本。在 64 位系统上,请确保使用 –enable-win64 命令行参数,如下所示:

## For 32-Bit Systems:
./configure 

## For 64-Bit Systems:
./configure  --enable-win64 

最后,运行 make 和 make install 命令来编译 wine 源并将其安装到您的系统上。

make 
make install 

根据系统硬件的可用资源,源代码编译需要一些时间才能完成。等待安装成功完成。

第 4 步:验证安装

使用以下命令检查系统上安装的wine版本

## On 32-Bit Systems:
wine --version 

## On 64-Bit Systems:
wine64 --version 

你应该看到wine-80在输出中。

第5步:配置Wine

下一步是配置 WineHQ 包。为此,请运行以下命令:

在 Debian 系统上,您可以为 Wine 配置“32 位”和“64 位”Windows 应用程序。在我们的例子中,我们为“32位”系统设置Wine环境:

winecfg  

Wine 配置将在您的“home”目录中开始更新:

Installing Wine from Source on debian based systems
Wine configuration

完成更新过程后,屏幕上将出现以下 Wine 配置对话框。您可以利用它来调整不同的选项。

例如,我们将打开“应用”选项卡并将 Windows 版本设置为“Windows 7的”:

要更改外观相关设置,请切换到“图形”选项卡并根据您的要求设置选项。

这就是在 Ubuntu 22.04 上安装和配置 Wine 的基本方法。

使用 WineHQ 在 Linux 上运行 Windows 程序

现在您已经在基于 Debian 的系统上安装并配置了 WineHQ。是时候开始运行那些讨厌的 Windows 程序了。出于测试目的,我下载了一个小的 Windows 执行文件腻子程序并通过 Wine 应用程序启动它。

Installing Wine from Source on debian based systems
Running windows application using wine

结论

WineHQ 是在 Ubuntu 计算机上运行 Windows 程序的绝佳方式。该程序在 Ubuntu 上非常容易安装和配置。此外,它允许您在需要时在 Debian 计算机上运行 Windows 程序。总的来说,它是一个在 Ubuntu 计算机上运行 Windows 程序的优秀免费解决方案。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在基于 Debian 的系统上从源代码安装 Wine 的相关文章

随机推荐

  • Java 使用正则验证Url地址是否以http:// 或 https:// 开头

    Java 使用正则验证Url地址是否以http 或 https 开头 正则表达式 String regUrl hH tT 2 pP hH tT 2 pP sS A Za z0 9 A Za z0 9 Pattern p Pattern co
  • C语言:使用可变参数,实现函数,求函数参数的最大值。

    此题的解决思路为 求若干个参数的最大值 我们假定第一个可变参数为最大值 定义为max 将之后的每一个可变参数和第一个可变参数相比较 始终在max里存放的是最大值 但是这里需要注意 每一次调用va arg 都会指向下一个可变参数 因此我们需要
  • C++递归算法题2的幂次方表示

    2 2的幂次方表示 查看 提交 统计 提问 总时间限制 1000ms 内存限制 65536kB 描述 任何一个正整数都可以用2的幂次方表示 例如 137 27 23 20 同时约定方次用括号来表示 即ab可表示为a b 由此可知 137可表
  • 请问C#中get和SET到底是什么意思啊?

    get set是用来扩展域的 也就是C里的变量 只是用起来更加灵活而己 看以下代码 using System public class cls private int book 定义一个域 也可以叫变量 只是面向对像里都这么叫 使用起来也更
  • java的map循环方法

    Java中Map的循环方法有多种 常用的有以下几种 使用for each循环 可以遍历Map中的所有键值对 for Map Entry
  • .net 中常用的正则表达式整理

    相信很多伙伴都跟我一样有关于正则表达式的爱和恨 怎么说呢 因为正则表达式规则繁多且复杂 想一个一个学 全部精通 需要耗费很长时间和精力 但是我们用的地方并不是很多 所以我觉得这类东西需要做成类似工具 需要的时候去查一下 平时不用花时间去认真
  • Docker和Dockerfile常用命令总结及微服务打包Docker镜像

    一 Docker 常用命令总结 1 帮助命令 查看docker的所有命令详情 docker help 查看docker对应命令的使用详情 docker 命令 help 如 查看docker images的使用方法 docker images
  • 《A Graduate Course in Applied Cryptography》Chapter 18 Protocols for identification and login(1)

    原文教材 与 参考资料 Boneh Dan Shoup Victor A Graduate Course in Applied Cryptography J 该书项目地址 可以免费获取 http toc cryptobook us 博客为对
  • 聊聊TCP协议的粘包、拆包以及http是如何解决的?

    目录 一 粘包与拆包是什么 二 粘包与拆包为什么发生 三 遇到粘包 拆包怎么办 解决方案1 固定数据大小 解决方案2 自定义请求协议 解决方案3 特殊字符结尾 四 HTTP如何解决粘包问题的 4 1 读取请求行 请求头 响应行 响应头 4
  • Fourth season eleventh episode,Phoebe wants to be her brother‘s surrogate mother(has baby for him)??

    Scene Central Perk Frank and Alice are there talking with Phoebe Phoebe Oh my God I can t believe my little brother is m
  • 【Ubuntu14.04安装】网络初始化配置

    一 环境 1 Ubuntu Server 14 04 2 Vmware Workstation 9 0 3 物理机 Windows7 64bit i5 3470 3 20Hz 8GB 二 基本点 1 弄清楚物理机和虚拟机之间的连接途径有三种
  • BroadcastReceiver普通广播、有序广播、拦截广播、本地广播、Sticky广播、系统广播

    http blog csdn net qq 30379689 article details 53341313 前言 BroadcastReceiver的简介 普通广播 自定义广播 有序广播 拦截广播 本地广播 Sticky广播 系统广播
  • 直流电机PID调速

    文章写的是基于数字PID控制器的闭环电机速度控制系统 系统以STC89C51单片机为控制核心 通过电机驱动L298N 这里因为所用电机是个小马达 额定电流和堵转电流不算大 所以用的是TC1508S做驱动 控制电机转速 电机转速控制采用PWM
  • 2013年CSDN高校俱乐部全国百所高校巡讲讲师招募

    CSDN高校俱乐部 以下简称 俱乐部 是由全球最大中文IT技术社区CSDN发起的 由全国各高校在校生代表自发加入的IT技术学习型组织 CSDN由此搭建起行业与校园之间的桥梁 公益为各俱乐部提供行业资讯 技术学习 专家交流 技术竞赛等学习服务
  • markdown绘图插件----mermaid简介

    作者 黄永刚 mermaid简介 当撰写文档的时候 对于流程图的生成大多使用Visio等繁重的工具 没有一种轻便的工具能够画图从而简化文档的编写 就像markdown那样 mermaid解决这个痛点 这是一个类似markdown语法的脚本语
  • [PDDL人工智能] 02.PDDL规划领域定义语言之语法理解和示例详解

    智能规划来源于人工智能对理性行为研究 针对一个具体行为的实施目的 开展动作规划以模拟或指导行为的实施 是AI开展研究的关键问题 本文主要介绍PDDL规划领域定义语言的基础语法知识和示例详解 希望文章对您有所帮助 该系列文章主要介绍PDDL人
  • 如何在 Debian 11 上安装 NVM

    NVM 代表 Node Version Manager 它是一个用于安装 Node js 的命令行实用程序 它只允许程序员在他们的帐户中安装 Node js 这意味着安装是根据用户特定完成的 单个系统中的所有用户都有自己的 Node js
  • 如何在 Ubuntu 18.04 中添加交换空间

    交换对于需要比物理可用内存更多的 RAM 的系统非常有用 如果内存已满并且系统需要更多 RAM 才能正常运行应用程序 它会检查交换空间并在那里传输文件 一般来说 交换区是硬盘的一部分 用作系统上的 RAM 我有一个正在运行的虚拟机 上面没有
  • 如何在 Apache 中配置 X-Frame-Options

    X Frame Options 用作 HTTP 响应标头 这可以防止您的网站内容嵌入到其他网站中 根据此值 浏览器允许其他站点在 iframe 中打开网页 它还可以保护您的 Apache Web 服务器免受点击劫持攻击 X Frame Op
  • 如何在基于 Debian 的系统上从源代码安装 Wine

    作为 Windows 程序的狂热用户 您可能会发现有时需要在 Ubuntu 系统上使用特定程序 尽管还有其他选项 例如虚拟机或 Wine 等程序 它有助于在 Linux 上运行 Windows 程序 但它们涉及一些工作 而且并不是运行这些程