免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
1234下一页
最近访问板块 发新帖
查看: 17909 | 回复: 38
打印 上一主题 下一主题

[转载] Wine 用户指南 [不要比尔跑程序] [复制链接]

论坛徽章:
1
技术图书徽章
日期:2013-12-05 23:25:45
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2005-09-12 18:51 |只看该作者 |倒序浏览
[转载] Wine 用户指南

Wine 用户指南

原文:http://www.winehq.com/Docs/wine-user/

--------------------------------------------------------------------------------

目录
1. 介绍
1.1. Wine 是什么?
1.1.1. Windows 和 Linux
1.1.2. 模拟与本地连接
1.2. Wine 要求和特征
1.2.1. 系统要求
1.2.2. Wine 的功能
2. 获得 Wine
2.1. Wine 的多种形式
2.2. 为 Debian 系统获得 Wine
2.3. 为 Redhat 系统获得 Wine
2.4. 为其他发布获得 Wine
2.5. 从 FTP 归档获得 Wine 源代码
2.6. 从 CVS 获得 Wine 源代码
2.7. 用补丁更新 Wine
3. 安装/编译 Wine
3.1. WWN#52 特征: 替代 Windows
3.1.1. 安装概述
3.1.2. 注册表
3.1.3. 目录结构
3.1.4. 系统 DLL
3.2. 安装 Wine 而无须 Windows
3.3. 处理 FAT/VFAT 分区
3.3.1. 介绍
3.3.2. 以 root 运行 Wine
3.3.3. 挂装 FAT 文件系统
3.3.4. 隐蔽 FAT 文件系统
3.4. SCSI 支持
3.4.1. Windows 要求
3.4.2. LINUX 要求
3.4.3. 一般信息
3.4.4. 注意/缺陷
4. 配置 Wine
4.1. 一般配置
4.1.1. Wine 配置文件
4.1.2. 我如何做一个?
4.1.3. 我把它放在哪里?
4.1.4. 如果它不工作怎么办?
4.2. Win95/98 外观
4.3. 配置 x11drv 驱动器
4.3.1. x11drv 操作模式
4.3.2. [x11drv] 段
4.4. 注册表
4.4.1. 注册表结构
4.4.2. 使用 Windows 注册表
4.4.3. Wine 注册表数据文件
4.4.4. 系统管理
4.4.5. 缺省的注册表
4.4.6. [registry] 段
4.5. wine 的驱动器标签和系列号
4.5.1. 支持什么?
4.5.2. 如何设置?
4.5.3. 例子
4.5.4. 要做/开放的要点
4.6. Dll 加载
4.6.1. DLL 类型
4.6.2. [DllDefaults] 段
4.6.3. [DllPairs] 段
4.6.4. [DllOverrides] 段
4.7. 键盘
4.8. 处理字体
4.8.1. 字体
4.8.2. 设置一个 TrueType 字体服务器
4.9. 在 Wine 中打印
4.9.1. 打印
4.9.2. Wine 的 PostScript 驱动程序
5. 运行 Wine
5.1. 如何运行 Wine
5.2. 命令行选项
5.2.1. --debugmsg [通道]
5.2.2. --desktop [几何]
5.2.3. --display
5.2.4. --dll
5.2.5. --dosver
5.2.6. --help
5.2.7. --language
5.2.8. --managed
5.2.9. --synchronous
5.2.10. --version
5.2.11. --winver
6. 找出和报告缺陷
6.1. 如何报告一个缺陷
6.1.1. 容易的方式
6.1.2. 困难的方式
6.1.3. 问题和注释


要回家了,明天继续转载这个余下的。

论坛徽章:
1
技术图书徽章
日期:2013-12-05 23:25:45
2 [报告]
发表于 2005-09-13 13:38 |只看该作者

[转载] Wine 用户指南 [不要比尔跑程序]

第 1 章. 介绍
目录
1.1. Wine 是什么?
1.2. Wine 要求和特征
1.1. Wine 是什么?
编写: John R. Sheets <jsheets@codeweavers.com>;

1.1.1. Windows 和 Linux
许多人面临着拥有的软件不能在他的计算机上运行的困扰。随着 Linux 近来的流行,因为操作系统的不同而发生的更加频繁。你的 Windows 软件不能在 Linux 上运行,而你的 Linux 软件不能在 Windows 上运行。

对这个问题的一个常见的解决方法是在一个计算机上同时安装这两个操作系统,成为一个 "双引导" 系统。如果你想在 MS Word 中写一个文档,你可以启动 Windows;如果你想运行 GnuCash,一个 GNOME 财务应用程序,你可以关闭你 Windows 任务(session)并重启动到 Linux。问题是你不能同时使用它们。每次在 MS Word 和 GnuCash 之间前后切换,你必须再次重启动。很快就会厌倦的。

如果你可以在同一个系统上运行所有你的程序,而不管它们是为 Windows 还是 Linux 写的,生活就容易多了。在 Windows 上,这实际上不可能。[1] 但是,Wine 使在 Linux (或 Solaris)上同时运行本地 Windows 应用程序和本地 Linux 应用程序成为可能。你可以在 MS Word 和 GnuCash 之间共享桌面空间,交叠窗口,图标化它们,甚至从同一个启动项(launcher)运行它们。

1.1.2. 模拟与本地连接
Wine 是 win32 库的一个 UNIX 实现,由上百个志愿开发者从头(from scratch)写成并在一个开放源代码许可之下发行。任何人都可以下载并阅读源代码,并修理存在的缺陷。Wine 社区众多有才干的程序员在增进 Wine 上花费了上千个小时的个人时间,所以它可以很好的与 win32 应用编程接口(API)一起工作,并保持与 Microsoft 相同的开发步调。

Wine 可以用两种不同的方式运行应用程序: 作为预编译的 Windows 二进制程序,或作为本地编译的 X11 (X Window 系统) 应用程序。前面的方法使用模拟把一个 Windows 应用程序和连接到 Wine 库上。通过 Wine 安装或简单的把 Windows 可执行文件复制到你的 Linux 系统上,你可以用模拟器直接运行你的 Windows 应用程序。

用 Wine 运行 Windows 应用程序的另一种方法需要拥有这个应用的源代码。不用本地 Windows 编译器编译它,象对其他 UNIX 应用程序所做的那样,你要用本地 Linux 编译器编译它 -- 例如 gcc  -- 并连接上 Wine 库。这些本地连接的应用程序被称为 Winelib 应用程序。

Wine 用户指南将关注于使用 Wine 模拟器运行预编译的 Windows 应用程序。Winelib 用户指南将覆盖 Winelib 应用程序。

 

注释
[1] 从技术的角度上,如果你有两个连网的计算机,一个运行 Windows 而另一个运行 Linux,并且你在这个 Windows 系统上运行了某种 X 服务器软件,你可以把 Linux 应用程序导出到 Windows 系统上。不幸的是,多数正规的 win32 X 服务器是商业产品,它们通常都很贵。如果你只有一个计算机那么这种方案就解决不了问题。

论坛徽章:
1
技术图书徽章
日期:2013-12-05 23:25:45
3 [报告]
发表于 2005-09-13 13:39 |只看该作者

[转载] Wine 用户指南 [不要比尔跑程序]

1.2. Wine 要求和特征
编写:Andreas Mohr <amohr@codeweavers.com>;

1.2.1. 系统要求
要运行 Wine 需要满足下列条件: 

一台计算机 Wine: 目前只支持 PCs >;= i386。Winelib: 可支持其他平台,但有点困难。

一个 UNIX 类的操作系统如 Linux、*BSD、Solaris x86。

>;= 16MB 的 RAM。在此之下所有东西都是不可用的。“良好”的执行需要 >;= 64 MB。

一个 X11 window 系统(XFree86 等)。Wine 为其他图形显示驱动器做了准备,但写支持不是很容易的。文本控制台显示驱动器基本上是可用的。

1.2.2. Wine 的功能
希望你已经设法完全满足了上述要求。现在我们告诉你 Wine 能做/支持的: 

支持执行 DOS、Win 3.x 和 Win9x/NT/Win2000 程序(支持多数 Win32 的控件)

选择使用外部厂商的 DLL(比如,原始的 Windows DLL)

基于 X11 的图形显示器(到任何可能的 X 终端的远程显示器),文本模式控制台

Desktop-in-a-box 或可混合的窗口

对游戏的非常高级的 DirectX 支持

对声音的良好支持,可替换(alternative)的输入设备

打印机: 支持固有 Win16 打印机驱动程序,内部 PostScript 驱动程序

支持调制解调器、串行设备

Winsock TCP/IP 连网

ASPI 接口 (SCSI) 支持扫描仪、CD 刻录机 ...

Unicode 支持,相对高级的语言支持

Wine 调试器和可配置的跟踪日志消息

论坛徽章:
1
技术图书徽章
日期:2013-12-05 23:25:45
4 [报告]
发表于 2005-09-13 13:39 |只看该作者

[转载] Wine 用户指南 [不要比尔跑程序]

第 2 章. 获得 Wine
目录
2.1. Wine 的多种形式
2.2. 为 Debian 系统获得 Wine
2.3. 为 Redhat 系统获得 Wine
2.4. 为其他发布获得 Wine
2.5. 从 FTP 归档获得 Wine 源代码
2.6. 从 CVS 获得 Wine 源代码
2.7. 用补丁更新 Wine
2.1.Wine 的多种形式
标准 Wine 发布包括许多不同的可执行、库、和配置文件。要使 Wine 良好的工作必须正确的设置所有这些文件。本章将指导你通过必要的步骤把 Wine 安装到你的系统上。

如果你运行的 Linux 的发行使用包来跟踪安装的软件,你可能走运了:  Wine 的一个预编译的版本可能已经存在于你的系统中了。前三节将告诉你如何找到最新的 Wine 包并安装它们。你应该小心在不同的发布之间混用包,即使是同一个发布的不同版本之间。经常是一个包只能在它所编译的发布上运行。我们将覆盖 Debian、Redhat 和其他发布。

如果你不够幸运的获得给你的操作系统的一个包,或者你偏好一个新版本的 Wine,它比现存的包要新,你必须下载 Wine 源代码并在你自己的机器上亲自编译它。不要担心,这不是很难,特别是与 Wine 一起的还有许多有用的工具。你无须有任何编程经验来编译和安装 Wine,但有一些 UNIX 管理经验就更好了。我们将覆盖如何从 FTP 归档取回并编译官方源代码,还有如何从 CVS (并发版本系统)获得最新(cutting edge up-to-the-minute fresh)的 Wine 源代码。二者的源代码安装的过程是类似的,并且你一旦掌握了其中一个,你处理另一个应当没有任何问题。

最后,你可能有一天需要知道如何向你的 Wine 版本提供补丁。可能你找到了 Wine 中的一个未发现的缺陷,请向 Wine 邮件列表报告,并从某个开发者接受一个补丁来修理这个缺陷。本章的最后一段将告诉你如何安全的提供补丁以及如果补丁不工作如何复原。

论坛徽章:
1
技术图书徽章
日期:2013-12-05 23:25:45
5 [报告]
发表于 2005-09-13 13:41 |只看该作者

[转载] Wine 用户指南 [不要比尔跑程序]

2.2. 为 Debian 系统获得 Wine
在 Debian 系统的多数情况下,你可以用一个简单的命令安装 Wine,作为 root:

# apt-get install wine
      


apt-get 将通过 Internet 连接到一个 Debian 归档(所以,你必须在线),接着下载 Wine 包并安装到你的系统上。完事了。

当然,Debian 的 Wine 预打包的版本可能不是最新的发行。如果你运行 Debian 的稳定版本,你可以通过从不稳定发布获取包来得到一个稍微新点的 Wine 版本,但这可能有点冒险,依赖于不稳定发布从稳定发布分叉多远。你可以在 www.debian.org 使用包查找引擎找到给各种 Debian 发行的 Wine 二进制包的一个列表。

如果要安装的一个包不是你的发布的一部分,你需要使用 dpkg 而不是 apt-get。因为 dpkg 不为你下载文件,你必须自己下载。依从在包查找引擎上的链接找到所需的包,接着点击 Go To Download 页面按钮并依从指示。保存文件到你的硬盘,接着在其上运行 dpkg。例如,如果你把文件保存到你的主目录中,你可以进行下列动作来安装它:

$ su -
<键入 root 口令>;
# cd /home/user
# dpkg -i wine_0.0.20000109-3.deb
   


你可能还需要安装 wine-doc 包,如果你使用 Wine 的 2.3 发布(Woody),则还需要 wine-utils 包。

论坛徽章:
1
技术图书徽章
日期:2013-12-05 23:25:45
6 [报告]
发表于 2005-09-13 13:46 |只看该作者

[转载] Wine 用户指南 [不要比尔跑程序]

2.3. 为 Redhat 系统 获得 Wine
Redhat/RPM 用户可以使用 rpmfind.net 来搜寻可获得的 Wine RPM 二进制包。 这个页面包含以字母"W"开头的所有 rpm 包的一个列表,包括一些 Wine 包。

论坛徽章:
1
技术图书徽章
日期:2013-12-05 23:25:45
7 [报告]
发表于 2005-09-13 13:47 |只看该作者

[转载] Wine 用户指南 [不要比尔跑程序]

2.4. 为其他发布获得 Wine
如果你的系统不是 Debian 或 Redhat,第一步是看 WineHQ 下载页。这个页面列出了许多 Wine 的分类混合的(assorted)二进制(预编译)归档文件。

Lycos FTPSearch 是搜寻杂类发布包的另一个有用的资源。

论坛徽章:
1
技术图书徽章
日期:2013-12-05 23:25:45
8 [报告]
发表于 2005-09-13 13:53 |只看该作者

[转载] Wine 用户指南 [不要比尔跑程序]

2.5. 从 FTP 归档获得 Wine 源代码
如果你想要的 Wine 的版本没有现存的包,你可以自己下载源代码并在你的机器上编译它。如果以前从未做过,第一次时可能感觉有点恐怖,你将发现这通常是非常顺畅的,特别是在新近的 Linux 发布上。

获得源代码的最安全的方式是从官方 FTP 归档获取。在 Wine 发布中的 ANNOUNCE 文件中(如果你已经下载了它的话)有一个最新列表。下面是(可能过时了)承载 Wine 的 FTP 服务器的一个列表:

 

ftp://metalab.unc.edu/pub/Linux/ALPHA/wine/development/

ftp://tsx-11.mit.edu/pub/linux/ALPHA/Wine/development/

ftp://ftp.infomagic.com/pub/mirrors/linux/sunsite/ALPHA/wine/development/

ftp://orcus.progsoc.uts.edu.au/pub/Wine/development/

官方发布加上了"Wine-YYYYMMDD.tar.gz"格式的日期标注。你最好的赌注是获得最新的发布。

FIXME: 解释如何 un-tar、从一个 tarball 编译和安装 Wine。

论坛徽章:
1
技术图书徽章
日期:2013-12-05 23:25:45
9 [报告]
发表于 2005-09-13 14:07 |只看该作者

[转载] Wine 用户指南 [不要比尔跑程序]

2.6. 从 CVS 获得 Wine 源代码
Wine CVS 的官方 Web 页是 http://www.winehq.com/dev.html。

首先,你需要使用 CVS 得到最新的 Wine 源代码的一个复件。你可以通过设置 CVSROOT 环境变量来告诉它到那里去找到源代码树。你还必须匿名登录到 wine CVS 服务器上。在 bash 中,过程可能如下:

$ export CVSROOT=:pserver:cvs@cvs.winehq.com:/home/wine
$ cvs login
Password: cvs
$ cvs checkout wine
   


这将从 winehq.com 取回整个 Wine 源代码树并把它放置到当前目录中(实际上在‘wine’子目录中 )。 CVS 有大量命令行参数,所以有多种方式从修订历史中的某个地方取回文件。此后,你可以只获取更新的文件:

$ cvs -dP update
      


cvs update 从源代码树的内部工作。你不需要 CVSROOT 环境变量来运行它。你只需要在代码树中。-d 和 -P 选项确保你的本地 Wine 树目录结构与远程仓库相同步。

在你做了变动之后,你可以通过 cvs diff -u 建立一个补丁,它把输出发送的 stdout(-u 控制这个补丁的格式)。所以,要建立一个 my_patch.diff 文件,你可以这样做:

$ cvs diff -u >; my_patch.diff
      


你可以从树中的任何地方调用 cvs diff(如同 cvs update),并且它将总是从这一点上递归的获取文件。你还可以指定一个单一的文件或子目录:

$ cvs diff -u dlls/winaspi >; my_aspi_patch.diff
      


做点实验,这是非常凭直觉的。

论坛徽章:
1
技术图书徽章
日期:2013-12-05 23:25:45
10 [报告]
发表于 2005-09-13 14:08 |只看该作者

[转载] Wine 用户指南 [不要比尔跑程序]

2.7. 用补丁更新 Wine
如果你有 Wine 源代码,与二进制发布相反,你可以选择向源代码树提供补丁来修理缺陷并增加实验性的特征。可能你已经发现了一个缺陷,请向 Wine 邮件列表报告,并接收一个补丁来修理这个缺陷。你可以用 patch 命令运用补丁,它从 stdin 接受补丁:

$ cd wine
$ patch -p0 < ../patch_to_apply.diff
      


要删除补丁使用 -R 选项:

$ patch -p0 -R < ../patch_to_apply.diff
      


如果你想要测试一下是否成功的提供了补丁(例如,如果这个补丁是从这个树的(比当前)老或新的版本建立的),你可以使用 --dry-run 参数来运行补丁而不写任何文件:

$ patch -p0 --dry-run < ../patch_to_apply.diff
      


patch 是从一个文件中提取补丁的聪明的方法,所以如果你保存了一封邮件,其中包含了给你的硬驱动器上的一个文件的内置(inline)的补丁,你可以在其上调用补丁而不须剥除邮件头部和其他文本。 patch 忽略看起来不象补丁的所有东西。

FIXME: 进一步解释 -p0 选项...
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP