标签 Wine 下的文章

Wine 团队很高兴的向您宣布,稳定版的 Wine 1.8 现在发布了!

经过了17个月的开发,我们完成了 13000 处修改,最重要的是实现了 DirectWrite 和 Direct2D,以及新的 Pulse Audio 驱动。

这么多的改进可以让它支持许多新应用和游戏,具体请阅读下面的主要更新内容。

源代码

二进制下载

文档

Wine 的开发完成要感谢许许多多的人们的付出,参见发布里面的 AUTHORS 文件。

Wine 1.8 的主要更新内容

文本与字体

  • 实现了 DirectWrite,并支持了一些应用。包括:可以从系统或指定字体集中载入字体、构建字体族、字体匹配算法、支持基本的字体布局等
  • 字符表基于 Unicode 8.0.0
  • 内置 Wingdings 字体

图形

  • 支持 Direct2D。包括:绘制文字、支持位图、颜色笔刷和位图笔刷、透明度笔刷
  • PNG 文件可以以交错模式编码
  • 可以从 PNG 文件中载入 Gamma 信息
  • GdiPlus 中正确支持了动画 GIF

Direct3D

  • 支持 Direct3D 11,和对 Direct3D 10的支持程度差不多
  • 支持使用 Direct3D 10的简单应用,但是仍有很多未实现的功能
  • 实现了一些新的 DXGI 1.1 接口
  • Direct3D 应用可以正确的最小化和恢复显示
  • wined3d 显卡数据库现在可以识别更多的显卡。显卡检测代码进行了简化和改进

DirectDraw

  • SetCooperativeLevel() 工作得更好了,个别情况下影响到了 DirectDraw 排除模式
  • DirectDraw 模式控制支持得更好了,主要影响到使用 8-bpp 显示模式的老式应用

音频与视频

  • 实现了一个 Pulse Audio 驱动,当 Pulse Audio 运行时会自动选择它
  • 在 DirectSound 中支持了 5.1 环绕立体声
  • 基于 OpenAL Soft 库实现了 XAudio2
  • 实现了 Video Mixing Renderer 版本7
  • 实现了 AVI 文件编码和压缩

内核

  • Wine 现在可以报告 'Windows8.1' 和 'Windows 10' 版本
  • 支持了“仅初始化一次”同步机制
  • 实现了条件变量
  • 实现了廋读写锁
  • Windows 设备支持除了 I/O 控制外的读写操作,它们可以重映射到已有的 Unix 设备上
  • 在动态载入库中支持线程本地存储
  • 实现了进程任务
  • 实现了任务调度服务
  • 支持 UTF-7 编码
  • 进程和线程亲和支持更多的处理器
  • 支持新的线程池 API

用户界面

  • 在桌面模式支持可选的启动菜单,可以通过 HKCU\Software\Wine\Explorer\Desktops\<name> 下设置"EnableShell" 为 "Y"来基于每桌面启用
  • 标准的文件对话框支持用于文件操作的下拉菜单
  • “我的文档”文件夹会链接到 XDG 或 Mac OS X 下的“文档”文件夹
  • 支持更多的外壳常用文件夹
  • 实现了滚动条主题,其它控件的主题工作的更好了
  • 工具条通用控制现在可以保存并恢复其状态

Mac OS X 支持

  • Mac OS X 上支持64位架构;然后并不完全兼容 Win64,因为 OS X 不是标准的64位 ABI
  • 精确的报告 Mac OS X 上的内存大小
  • 支持垃圾箱文件夹枚举

X11 驱动

  • 支持 X 拖放协议版本5
  • 实现了闪烁窗口标题

OLE / COM

  • OLE 存储文件支持文件锁定,大小可以超过4GB
  • 在 64 位环境下类型库正确注册
  • 64位程序可以载入32位类型库
  • 用于控制窗口服务的 RPC 接口现在兼容原生版本

互联网与网络

  • 从 Firefox 40 更新了 Gecko 引擎,在 MSHTML 中实现了很多对象和属性
  • 互联网代理可以自动配置
  • 部分实现了 Web 服务 API
  • 在 JavaScript 中支持条件编译
  • 可以使用 Samba 的 NetAPI 库配置远程网络共享
  • 实现了包捕获 DLL
  • 实现了网络接口改变提醒

打印

  • 通过 PostScript 驱动打印时支持垂直文字
  • 当打印彩色图片时,黑白打印支持更好

其它

  • WMI 实现了几个 WBEM 系统类
  • 在 MSI 中更好的支持了应用安装补丁
  • 支持更多新版本的 C/C++运行时库,包括新的 UCRTBASE 库,旧式的 MSVCIRT C++ 运行时也部分实现了
  • 实现了 ATL 版本 9、10、11
  • 实现了 XML 文件写入

内置应用

  • 任务管理器应用显示哪个进程运行在 WoW64 下
  • 注册表编辑器对导入导出支持更好
  • wine控制台支持设置对话框的配置插入/覆写模式

平台相关的改变

  • ARM 平台上正确汇报系统和硬件信息
  • ARM64 平台支持 WoW64模式
  • 在 Android 上支持64位架构

构建环境

  • 源代码可以跨 DLL 共享,可以从同样的源代码构建多个版本的 DLL。
  • 支持 #pragma 指令
  • 消息编译器使用 mo 文件,替代了 po 文件

新的外部依赖

  • liblcms2 替代了 liblcms 1
  • 来自 Samba 的 libnetapi 用于配置远程网络共享
  • libpcap 用于实现包捕获 DLL
  • libpulse 用于 Pulse Audio 驱动
  • OpenAL Soft 库用于实现 XAudio2

已知问题

  • 因为 WineD3D 的 OpenGL 内核上下文支持仍然没有完全做好,在旧式上下文中需要支持 Direct3D 10 和 11,所以它们当前不支持 Mesa

Wine 发布了最新的1.7.53版本。此版本带来的大量性能提升,包括XAudioDirect3D代码清理,改善OLE对象嵌入技术,更好的 Web Services DLL的实现,还有其他大量更新。

虽然有一个官方 Wine PPA,但目前只提供1.7.44版本,所以安装最新版本可以从源码编译安装。

下载源码包直接下载地址在此)并解压 tar -xf wine-1.7.53。然后,安装如下依赖。

sudo apt-get install build-essential gcc-multilib libx11-dev:i386 libfreetype6-dev:i386 libxcursor-dev:i386 libxi-dev:i386 libxshmfence-dev:i386 libxxf86vm-dev:i386 libxrandr-dev:i386 libxinerama-dev:i386 libxcomposite-dev:i386 libglu1-mesa-dev:i386 libosmesa6-dev:i386 libpcap0.8-dev:i386 libdbus-1-dev:i386 libncurses5-dev:i386 libsane-dev:i386 libv4l-dev:i386 libgphoto2-dev:i386 liblcms2-dev:i386 gstreamer0.10-plugins-base:i386 libcapi20-dev:i386 libcups2-dev:i386 libfontconfig1-dev:i386 libgsm1-dev:i386 libtiff5-dev:i386 libmpg123-dev:i386 libopenal-dev:i386 libldap2-dev:i386 libgnutls-dev:i386 libjpeg-dev:i386

现在切换到 wine-1.7.53 解压后的文件夹,并输入:

./configure
make
sudo make install

同样地,你也可以给配置脚本指定 prefix 参数。以普通用户安装 wine:

./configure --prefix=$HOME/usr/bin
make
make install

这种情况下,Wine 将会安装在$HOME/usr/bin/wine,所以请检查$HOME/usr/bin在你的PATH变量中。


via: http://www.tuxarena.com/2015/10/how-to-compile-latest-wine-32-bit-on-64-bit-ubuntu-15-10/

作者:Craciun Dan 译者:VicYu/Vic020 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

UPDATE: 2015-08-31

QQ 6.3 由于版本低,已不能登录,以下教程已不适用,有想要折腾 wine QQ 的仅供参考。

Linux 上面玩 QQ 一直都是一个问题。Wine 算是一个解决方案,但是也有不少人失败了。由于 QQ 的特殊性,采取了一系列的保护措施,导致 QQ 这个 Windows 程序非常复杂,因此 Wine 在运行 QQ 时表现差强人意。本文将要安装的是 QQ6.3 ,更高的版本除非对 QQ 做出修改,否则很难安装成功,即使成功了,问题也挺多的(笔者已试验过 QQ7.4 安装)。写这个的目的主要是方便有人遇到问题截图提问,毕竟 Linux 的普及工作还得靠大家,对于日常聊天还是建议使用手机QQ 。

本文环境

  • Arch Linux (其他发行版仅供参考)
  • KDE4 & LXDE & GNOME (其它请自测)

准备工具

  • Wine
  • winetricks

简介

  • Wine 是一个在类 Unix 系统中运行 Microsoft Windows 程序的软件, Wine 的全称是 Wine Is Not Emulator 意为 Wine 不是一个模拟器,它通过 API 转换技术做出 Linux 上对应于 Windows 的函数,从而调用 DLL 运行 Windows 程序。
  • winetricks 是一个 script ,可以用来下载和安装各种在 Wine 运行时需要的部分 DLL 和框架。如 .NETVisual C++ runtime library 或微软和其他公司的闭源程序,使用 winetricks 你可以快速安装某些常用的Windows程序。

步骤

1.安装 Wine

$ sudo pacman -S wine

注意:64 位需启用 multilib 仓库才可安装 Wine ,去掉 [multilib] 及其 Include的 “#”即可

$ sudo nano /etc/pacman.conf

2.安装 winetricks

$ sudo pacman -S winetricks

3.获取 winetricks-zhverb 文件,更多详情请到: winetricks-zh

$ mkdir workforwine
$ cd workforwine
$ wget https://github.com/hillwoodroc/winetricks-zh/raw/master/verb/qq.verb

4.安装 QQ

$ WINEARCH=win32 winetricks qq

接下来是漫长的安装过程,会下载一系列需要的组件,将缓存在 ~/.cache/winetricks ,请耐心等待。或许你还可以试试 winetricks-zhwinetricks-zhwinetricks 的本地化版本,添加了更多国人可能用到的软件。

$ wget https://github.com/hillwoodroc/winetricks-zh/raw/master/winetricks-zh
$ chmod +x winetricks-zh
$ ./winetricks-zh

注意:若你觉得 安装QQ 这一步安装 monogecko 太慢,如下图:

installmono

installingmono

installgecko

根据配图我们可以知道 mono.NET 需要的包,而 gecko 则是 HTML 需要的包,并且 wine 也更建议我们使用我们发行版中的 monogecko 包,这有两个好处,一是更加符合自己的发行版,二是不用为每个 PREFIEX 单独安装,因此可以尝试以下操作,其他发行版仅供参考:

$ rm -rf ~/.wine
$ sudo pacman -S wine-mono
$ sudo pacman -S wine_gecko
$ WINEARCH=win32 winetricks qq

需要注意的几点

  • 请确保你安装有文泉驿字体 sudo pacman -S wqy-microhei
  • winetrickswinetricks-zh 安装的区别仅在于安装目录不同, winetricks 未指定位置时默认 ~/.wine ,而winetricks-zh 则安装QQ至 ~/.local/share/wineprefixes/qq
  • 有任何问题都可以直接删除上面提到的两个文件夹重来。
  • wine 的不稳定性,导致用 winetricks 安装字体有时可以解决,有时不可以,笔者试验了很多次以失败告终,希望有谁解决了可以告诉笔者。

其他解决方案

参考资料

Wine,一个在Linux平台上非常受欢迎并且强大的开源应用,有了它,我们可以在Linux平台上完美运行Windows应用与游戏。

在Linux上安装Wine(开发版本)

WineHQ团队,近期宣布了一个新的开发版本Wine1.7.29。这个版本带来了诸多重要的特性,并且修复了44个bug。

Wine团队几乎每周都会发布新的开发版本,并且加入许多新特性以及修复漏洞。每个新版本都会支持新的应用与游戏(Windows),这使得Wine在那些想要在Linux下运行Windows应用的用户群体中很流行并且是不可缺少的。

根据变更日志,这个版本中添加了以下的关键特性:

  • 在DirectWrite中加入增强的外形塑造与BiDi(译者:bi-directional language)镜像。
  • 升级了一些页面错误处理方式。
  • 增加了更多的C运行时函数。
  • 修复了大量的bug。

在官方的 变更日志 中可以找到关于这个版本更多更深入的细节。

这篇文章指导你在基于RedHatDebian的系统,如CentOS,Fedora,Ubuntu,Linux Mint以及其他的发行版中安装最新的开发版本Wine 1.7.29

在Linux中安装 Wine 1.7.29 开发版本

遗憾的是,目前还没有官方的Wine仓库可以获取基于RedHat系统的版本,只能通过编译源码来安装。如果要这么做的话,我们先要安装一些开发包如gcc,flex,bison,libX11-devel freetype-devel 以及开发工具,等等。这些工具都是编译Wine源码所必须的。我们可以通过YUM命令来安装这些包。

RedHat,Fedora,CentOS

# yum -y groupinstall 'Development Tools'
# yum -y install flex bison libX11-devel freetype-devel

然后,使用如下命令下载Wine最新的开发版本(1.7.29)以及解压源码包。

$ cd /tmp
$ wget http://citylan.dl.sourceforge.net/project/wine/Source/wine-1.7.29.tar.bz2
$ tar -xvf wine-1.7.29.tar.bz2 -C /tmp/

接下来,使用下列命令编译及安装Wine。

注:安装过程大概需要15-20分钟,这个时间由你的网络速度以及电脑硬件配置决定,在安装过程中需要root密码。

32位系统

$cd wine-1.7.29/
$./tools/wineinstall

64位系统

$ cd wine-1.7.29/
$ ./configure --enable-win64
$ make
# make install

Ubuntu,Debian 与 Linux Mint

Ubuntu系统下,你可以使用官方的PPA方便的安装最新的Wine开发版本。打开一个终端并使用sudo权限执行下列命令。

$ sudo add-apt-repository ppa:ubuntu-wine/ppa 
$ sudo apt-get update
$ sudo apt-get install wine 1.7 winetricks

:在写这篇文章时,只能获取1.7.26,在官方的仓库中还没有更新到最新版本,但是当仓库更新到1.7.29后,使用上面的指令可以安装最新的版本。(译者:为毛我看了版本号是1.6.2......)

安装成功后,你可以安装或运行任何windows应用或游戏了,示例如下:

$ wine notepad
$ wine notepad.exe 
$ wine c:\\windows\\notepad.exe

:切记,这是一个开发版本,请勿在生产系统上安装它。建议这个版本仅作测试用。

如果你需要最新的稳定版本,可以参考下列文章,它介绍了如何安装最新的稳定版本。

参考链接


via: http://www.tecmint.com/install-wine-in-linux/

作者:Ravi Saive 译者:SPccman 校对:wxy

本文由 LCTT 原创翻译,Linux中国 荣誉推出

Wine,Linux上最流行也是最有力的软件, 可以顺利地在Linux平台上运行Windows程序和游戏。

安装Wine

这篇文章教你怎么在像CentOS, Fedora, Ubuntu, Linux Mint一样基于Red HatDebian的系统上安装最新的Wine 1.7

在Linux安装 Wine 1.7

不幸的, 在基于Red Hat的系统上没有官方的 Wine 仓库,所以唯一的安装方式是从源码编译。你需要安装一些依赖的包比如gcc, flex, bison, libX11-devel freetype-devel 和 Development Tools,这些包用来从源码编译Wine。我们可以用yum命令安装他们。

在 RedHat, Fedora 和 CentOS 上

# yum -y groupinstall 'Development Tools'
# yum -y install flex bison libX11-devel freetype-devel

接下来,下载最新的开发版本(如1.7.21)并用下面的命令解压。

$ cd /tmp
$ wget http://citylan.dl.sourceforge.net/project/wine/Source/wine-1.7.21.tar.bz2
$ tar -xvf wine-1.7.21.tar.bz2 -C /tmp/

现在,要以普通用户身份编译并搭建Wine的安装程序。(注意: 根据机器性能和网络速度的不同,安装过程需要 15-20 分钟,安装过程中会要求输入 root 密码。)

32位系统上

$ cd wine-1.7.21/
$ ./tools/wineinstall

64位系统上

$ cd wine-1.7.21/
$ ./configure --enable-win64
$ make
# make install

在Ubuntu, Debian 和 Linux Mint 上

在基于Ubuntu 的系统上, 你可以用官方的 PPA来轻松安装最新的Wine。打开一个新终端用sudo运行如下命令。

$ sudo add-apt-repository ppa:ubuntu-wine/ppa 
$ sudo apt-get update
$ sudo apt-get install wine 1.7 winetricks

一旦装完了,你可以以如下方式运行基于Windows的软件和游戏。

$ wine notepad
$ wine notepad.exe 
$ wine c:\\windows\\notepad.exe

注意: 请记住,如果是开发版本不要用在生产环境。 建议只用在测试用途

如果你想安装最近的稳定版Wine, 请看下面的文章, 在文章里介绍了在几乎所以Linux系统中安装Wine的方法

参考链接


via: http://www.tecmint.com/install-wine-in-linux/

译者:2q1w2007 校对:wxy

本文由 LCTT 原创翻译,Linux中国 荣誉推出

事件起源

昨天夜间,@lovenemesis 在新浪微博上披露了一条消息

这条消息迅速在微博上得到了众多关注和评论。

消息的来源主要来自:

Phoronix : Chinese People Try To Patent Wine On ARM

WineHQhttp://www.winehq.org/wwn/366#Bad%20Patents

随后,LinuxToy编发了文章“中国公司为 Wine ARM 实现申请专利并获批准”:

专利的情况

经过对专利内容的检索,发现该专利申请人确为开发龙井兼容内容项目的浙大网新公司(而且还是上市公司)。

其第一发明人是:毛德操,其百度百科介绍如下:

专利内容如下:

国家知识产权局的内容I#):

以及Google上的相应信息 ,值得关注的是,其对专利权利的要求:

网络的评论

消息被网络转发后,各种评论和意见纷纭:

本站基于义愤,进行了转发:

大家也有各种不同的意见,如:

甚至 @某冰磷的碳核 也发表了严厉的抗议

此外,在LinuxToy上也有比较激烈的讨论,而且也有自称为其中一个发明人“徐鼎鼎”的人出来解释一些情况:

而到目前为止,还没有浙大网新官方或者可确认身份的发明人来发表正式的说明。