Wine——在Linux上运行Windows软件
参考:
如何安装和使用Wine,以便在Linux上运行Windows应用程序?
Ubuntu13.04(64bit)下用Wine安装百度云、360云、微云
一、简介
Wine是一个在x86、x86-64上容许类Unix操作系统在X Window System下运行Microsoft Windows程序的软件。另一方面,计算机程序设计师能经由Wine的程序库将视窗的程序转移至类Unix操作系统中运行。也有不少软件经过Wine测试后发布,比如Picasa,uTorrent,MediaCoder。
虽然Wine有另一个非官方名称,"Windows Emulator",即Windows模拟器,但Wine其实为"Wine Is Not anEmulator"的递归缩写,即Wine不是模拟器。Wine的正确名称是"Wine",不是全大写或全小写。[2]
Wine不是Windows模拟器,而是运用API转换技术实做出Linux对应到Windows相对应的函数来调用DLL以运行Windows程序。Wine是自由软件,在GNU宽通用公共许可证(LGPL) 下发布。
我将在基本操作系统( Elementary OS)Freya上演示这个过程,并安装最新版本的Wine。
二、安装
如果你在运行Ubuntu衍生版,会在Software Center(软件中心)中找到Wine。不过,那个版本很可能过时了。正由于如此,我们应该避免提供的“默认”版本。为此,我们必须添加官方的Wine软件库。这可以通过两种方法来实现,通过命令行或通过GUI。由于我们的目的是运行Windows应用程序,不妨使用GUI方法。
具体方法如下:
1. 点击Applications(应用程序)菜单。
2. 输入software。
3. 点击Software & Updates(软件和更新)。
4. 点击Other Software(其他软件)选项卡。
5. 点击Add(添加)。
6.在APT行部分输入ppa:ubuntu-wine/ppa(见图2)。
7. 点击Add Source(添加来源)。
8. 输入你的sudo密码。
9. 点击Authenticate(验证)。
10. 点击Close(关闭)。
11. 出现提示后,点击Reload(重新装入)。
12. 打开Software Center(软件中心)。
13. 搜索Wine。
14. 点击Wine项,然后点击Install(安装)。
15. 让安装完成。
图2:添加必要的PPA(个人程序包存档),以便安装最新版本的Wine
就是这样。Wine现在已准备好帮助你安装和运行Windows应用程序了。不过切记:不是每个应用程序都能正常运行。大多数会,但是如果你期望将内部的专有解决方案安装并运行起来,可能会碰到几个障碍。
三、安装和运行应用程序
不妨安装一个非常受编程人员欢迎的记事本:Notepad++。你需要从不包括第三方应用程序安装选项的位置下载文件(这可能会导致应用程序安装失败)。为了保险起见,从Filehippo(http://www.filehippo.com/zh/download_notepad)下载Notepad++安装程序。你会在Downloads目录下找到Notepad的.exe文件。右击该文件,选择Open in Wine Windows Program Loader(使用Wine Windows程序装载器打开,图3)。
图3:使用Wine运行Notepad++ .msi文件
首次运行后,~/.wine的Wine配置会被更新。这可能要花点时间,具体取决于系统的运行速度。让这个过程完成,然后再熟悉不过的Windows安装向导就会启动,逐步完成安装Notepad++的过程。
点击Next(下一步),逐步完成安装过程。第二个屏幕弹出来后(见图4),你会注意到很不像Linux的Folder路径。
图4:非常不像Linux的文件夹路径
Linux不像Windows那样含有C驱动器。这有什么不对吗?没什么不对。如果你看一下~/.wine文件夹,就会注意到一个名为drive_c的文件夹。该文件夹里面有三个熟悉的子文件夹:
•Program Files
•users
•windows.
正如你预料的那样,这就是你的C驱动器。也就是说,让Folder路径在安装过程中保持原状。
你最终会进入到安装过程的Choose Components(选择组件)部分(图5)。你在这里可以选择安装选项。如果你的那种桌面环境允许桌面图标(而这是你启用应用程序的首选方法),可能应该选择Create Shortcut on Desktop(在桌面上创建快捷方式,那样就更容易启动刚安装的应用程序――这方面稍后会有更多介绍)。
图5:为Notepad++安装选择安装组件
安装完成后会显示Finish(完成)屏幕。让Run Notepad(运行记事本)方框处于被勾选的状态,点击Finish(完成)。Notepad++就会运行(图1)。
如果你不添加应用程序图标到桌面,当你想再次运行该软件时,会出现什么情况?这是很容易让用户犯难的一个问题。还记得Program Files子目录吗?如果你大胆进入到该文件夹,就会看到Notepad++的文件夹,里面含有notepad++.exe文件。你猜会怎么样?右击该文件,选择Open in Wine Windows Program Loader(使用Wine Windows程序装载器打开),Notepad++就会运行。
Notepad++这个简单的例子表明了Wine的工作原理。如果你深入探究更复杂的应用程序,结果可能不一样。最明智的做法就是回到Wine应用程序数据库,找到你想要安装的那个应用程序,点击它,检查应用程序的当前状态。你会发现每个应用程序列出了测试的Wine版本、是否可以安装、是否可以运行,并给出了评级。评级包括如下:
白金级(Platinum):直接就可以无缝运行的应用程序。
黄金级(Gold):进行一些必要的改动后才能运行的应用程序。
白银级(Silver):运行时会出现小问题的应用程序,但并不影响使用。
你还会发现有些应用程序被列为垃圾(Garbage),这意味着它们没法安装及/或没法运行。
如果你有一个Windows应用程序根本就没有对应的Linux应用程序,别担心――Wine可以帮助你。尽管不是每个Windows应用程序都可以在Wine下运行,但是确实能运行的应用程序数量确实非常多。而考虑到我们如今所做的几乎一切任务都在Web浏览器里面处理,所以只要得到Wine的一点帮助,应该能够满足你在应用程序方面的各个要求。
Wine——在Linux上运行Windows软件的更多相关文章
- Wine --- Linux上运行 Windows 应用
https://www.winehq.org/ Wine (“Wine Is Not an Emulator” 的首字母缩写)是一个能够在多种 POSIX-compliant 操作系统(诸如 Linu ...
- Linux上使用Windows软件
小书匠 安装完成后,甚至可以在linux上进行视频会议,整个过程分两个步骤: 1.安装deepin-wine 这个步骤看github,Jactor Sue这位老哥弄好了,在这: Deepin-Apps ...
- Linux下运行windows程序
现在Winxp停止了支持,那我们的windows程序是否可以再linux上执行呢,如下是一些参考的信息 在您的 Linux/Mac 操作系统上运行 Windows 软件 http://www.wine ...
- 在Linux上运行C#
众所周知,C#是Microsoft推出的.NET语言,只能在.NET平台上运行,例如Win 9x.ME.NT.2000.XP和Win CE之类的操作系统.但是,现在却有了一个叫做Mono的项目,它的目 ...
- 【无私分享:ASP.NET CORE 项目实战(第十章)】发布项目到 Linux 上运行 Core 项目
目录索引 [无私分享:ASP.NET CORE 项目实战]目录索引 简介 ASP.Net Core 给我们带来的最大的亮点就是跨平台,我在我电脑(win7)上用虚拟机建了个 CentOS7 ,来演示下 ...
- 发布项目到 Linux 上运行 Core 项目
发布项目到 Linux 上运行 Core 项目 目录索引 [无私分享:ASP.NET CORE 项目实战]目录索引 简介 ASP.Net Core 给我们带来的最大的亮点就是跨平台,我在我电脑(win ...
- Docker在Linux上运行NetCore系列(一)配置运行DotNetCore控制台
转发请注明此文章作者与路径,请尊重原著,违者必究. 系列文章:https://www.cnblogs.com/alunchen/p/10121379.html 本篇文章操作系统信息 Linux:ubu ...
- jmeter操作数据库,分布式,在Linux上运行
jmeter操作数据库: 1.在测试计划中导入数据库jar包 2.添加链接数据库信息 3.mysql:jdc:mysql://192.168.1.116:3307/bugfree?allowMulti ...
- Linux上实现Windows的SQLPlus保存SQL历史记录功能
在Windows操作系统上,当在DOS命令窗口中运行SQL*Plus的时候,可以使用向上,向下键来跳回之前已经执行过的SQL语句.你可以根据需要修改他们,然后按Enter键重新提交执行. 然而,当在L ...
随机推荐
- Vi命令备忘
备忘 Ctrl+u:向文件首翻半屏: Ctrl+d:向文件尾翻半屏: Ctrl+f:向文件尾翻一屏: Ctrl+b:向文件首翻一屏: Esc:从编辑模式切换到命令模式: ZZ:命令模式下保存当前文件所 ...
- C++开始前篇,深入编译链接(补充1)
针对这些问题,这次做一个补充: 一,可重定位文件的格式是什么,以main.o为例, 格式为ELF ,包括:{1,ELF Header 它描述了整个文件的文件属性,包括文件是否可以执行,是静态链接还是动 ...
- 多个supplemental logging的说明与删除
有时候我们做ogg的时候,查看info trandata schema.table 无法查看到对应的supplement log信息, 但是我们查看table script的时候可以看到supplem ...
- C语言的一些小知识
注:本文讨论的"C语言"为GNU C,而非ANSI C 标准库 语法 switch语句中的case关键词可以放在任何地方 switch (a) { case 1:; if (b== ...
- 前端弹出层框架layer
http://www.layui.com/doc/modules/layer.html#layer.confirm
- android Studio 百度KEY获得发布版 SHA1 的方法
看图说话 build-->Generate Signed APK... create new(看不懂单词意思的同胞可以参考这个网址http://www.cnblogs.com/why168888 ...
- jQuery 追加元素的方法如append、prepend、before,after(转)
1.jQuery append() 方法 jQuery append() 方法在被选元素的结尾插入内容. 实例 复制代码代码如下: $("p").append("Some ...
- 十个免费的web应用安全检测工具
Websites are getting more and more complex everyday and there are almost no static websites being bu ...
- oracle中批量生成字段类型的脚本
select ' ALTER TABLE '||table_name || ' MODIFY( '|| column_name || ' DATE );' from USER_TAB_COLUMNS ...
- android 5.0以上通知栏、状态栏图标变成白色
在5.0以上的系统上发现,平常的自定义notification出来的icon,居然在状态栏上变成了纯白色的icon. 看源代码会发现: protected void applyColorsAndBac ...