ubuntu15.10下编译安装wine1.8rc4

Wine (“Wine Is Not an Emulator” 的递归缩写)是一个能够在多种 POSIX-compliant 操作系统(诸如 Linux,Mac OSX 及 BSD 等)上运行 Windows 应用的兼容层。另外英语单词wine是葡萄酒的意思。

Wine1.8在2015年12月19日已经正式发布了。相关的信息参考https://www.winehq.org/

1、下载wine1.8 rc4源码

源码直接到官网下载即可。

wget https://dl.winehq.org/wine/source/1.8/wine-1.8.tar.bz2

下载之后解压,这就不说了。(tar -xjf …)

2、安装编译环境

编译环境是需要安装好,不然 ./configure 的时候就通不过。这里说的编译环境主要是指gcc编译工具链。

sudo apt-get install gcc g++

然后安装32位开发环境(gcc的32位开发库)

sudo apt-get install lib32gcc-5-dev  lib32stdc++6 lib32gfortran-5-dev-s390x-cross lib32stdc++6-s390x-cross lib32readline6-dev

如果没有安装,那么 ./configure 的时候报的错如下

1
2
checking whether gcc -m32 works... no
configure: error: Cannot build a 32-bit program, you need to install 32-bit development libraries.

3、安装依赖库

安装依赖库的时候,具体要安装哪些可以看 ./configure 的报错信息,我这里安装的如下

1
2
3
sudo apt-get install flex bison  libfreetype6-dev libjpeg-dev libpng-dev  libxrender-dev libgl1-mesa-dev libglu1-mesa-dev freeglut3-dev prelink libasound2-dev libgnutls-dev
#下面是对应的32位库
sudo apt-get install flex bison  libfreetype6-dev:i386 libjpeg-dev:i386 libpng-dev:i386  libxrender-dev:i386 libgl1-mesa-dev:i386 libglu1-mesa-dev:i386 freeglut3-dev:i386 prelink libasound2-dev:i386 libgnutls-dev:i386

我这里还会报两个警告,但是这不能安装了。不用管它,可以编译。

configure: WARNING: libxml2 32-bit development files not found (or too old), XML won't be supported.

configure: WARNING: libxslt 32-bit development files not found, xslt won't be supported.

configure: Finished.  Do 'make' to compile Wine.

4、生成Makefile

先在源码目录建一个build的目录,然后进入目录。再使用../configure来生成Makefile
如果没有建build目录,./configure的时候会提示的

../configure --prefix=/home/o/pragram/wine1.8 --exec-prefix=/home/o/pragram/wine1.8/exec --with-x --disable-win16

--prefix用于指定wine的安装文件依赖文件等的存放目录(include、share)
--exec-prefix用于指定wine的安装目录,相关的执行文件都在此。
更详细的参数可以使用../configure --help来查看。

5、编译安装

编译和安装的过程很简单。直接make编译,然后sudo make install

6、安装完成后的设置

首先要添加wine的执行文件目录到PATH环境变量。(这个方法有很多,可以不添加)

如果不想修改环境变量,可以用下面的方式。
在启动.exe程序的时候先export导入路径到环境变量。这个可以写在脚本里面来启动。

运行winecfg程序来设置相关的参数,建议选定Windows版本为Windows 7
其他的相关参数,根据自己的喜好来选定吧。

如果winecfg运行的时候,窗口上的文字都是 ||(||!) 之类的,那么要做一下第7步

7、中文语言的支持

详细设置请参考http://forum.ubuntu.org.cn/viewtopic.php?t=72933
1、复制windows下的simsun.ttc字体到~/.wine/drive-c/windows/fonts/目录下。
2、新建一个zh.reg文件,然后打开它,输入以下内容。然后回答命令行,使用regedit zh.reg来导入到注册表。

REGEDIT4
[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\FontSubstitutes]
"Arial"="simsun"
"Arial CE,238"="simsun"
"Arial CYR,204"="simsun"
"Arial Greek,161"="simsun"
"Arial TUR,162"="simsun"
"Courier New"="simsun"
"Courier New CE,238"="simsun"
"Courier New CYR,204"="simsun"
"Courier New Greek,161"="simsun"
"Courier New TUR,162"="simsun"
"FixedSys"="simsun"
"Helv"="simsun"
"Helvetica"="simsun"
"MS Sans Serif"="simsun"
"MS Shell Dlg"="simsun"
"MS Shell Dlg 2"="simsun"
"System"="simsun"
"Tahoma"="simsun"
"Times"="simsun"
"Times New Roman CE,238"="simsun"
"Times New Roman CYR,204"="simsun"
"Times New Roman Greek,161"="simsun"
"Times New Roman TUR,162"="simsun"
"Tms Rmn"="simsun"

ubuntu15.10下编译安装wine1.8 rc4的更多相关文章

  1. Ubuntu下编译安装postgreSQL 10.5

    Ubuntu下编译安装postgreSQL 10.5 ubuntu 16.04 LTS系统postgreSQL 10.5 安装包准备 1.从PostgreSQL官网下载PostgreSQL的安装包 安 ...

  2. centos下编译安装lnmp

    centos下编译安装lnmp 本文以centos为背景在其中编译安装nginx搭建lnmp环境. 编译安装nginx时,需要事先安装 开发包组"Development Tools" ...

  3. LINUX下编译安装PHP各种报错大集合

    本文为大家整理汇总了一些linux下编译安装php各种报错大集合 ,感兴趣的同学参考下. nginx1.6.2-mysql5.5.32二进制,php安装报错解决: 123456 [root@clien ...

  4. Redhat环境下编译安装Google Bazel

    Redhat环境下编译安装bazel 作者:Jack47 目前Google Bazel没有提供各个操作系统下的二进制安装包,只提供源代码,需要我们自己编译安装,详情可以见我翻译的中文版Google B ...

  5. CentOS下编译安装MySQL 5.6.21

    一.编译安装MySQL前的准备工作 安装编译源码所需的工具和库 yum install gcc gcc-c++ ncurses-devel perl 安装cmake:http://www.cnblog ...

  6. centos6.7下编译安装lnmp

    很多步骤不说明了,请参照本人的centos6.7下编译安装lamp,这次的架构是nginx+php-fpm一台服务器,mysql一台服务器 (1)首先编译安装nginx: 操作命令: yum -y g ...

  7. centos下编译安装mysql5.6

    CentOS 6.4下编译安装MySQL 5.6.14 参考:http://www.cnblogs.com/xiongpq/p/3384681.html 概述: CentOS 6.4下通过yum安装的 ...

  8. Linux下编译安装qemu和libvirt

    目录 [hide] 1 安装qemu 1.1 qemu介绍 1.2 下载源文件 1.3 编译安装 2 安装libvirt 2.1 libvirt介绍 2.2 下载libvirt 2.3 编译安装 3  ...

  9. 在Linux Mint13下编译安装mono运行时

    最近一直想体验下mono在web开发上到底进展到什么程度,挑战一下它对web开发的极限.因为asp.net mvc本身依赖windows平台的东西不太多,所以这些assembly移植到mono/lin ...

随机推荐

  1. Java对象的多态性(转型)

    多态性在面向对象中主要有两种体现: <1>方法的重载与覆写 <2>对象的多态性 对象的多态性:向上转型:子类对象-->父类对象,向上转型会自动完成 向下转型:父类对象-- ...

  2. Docker 修改默认存储位置

    首先使用 docker info 查看 docker 的基本信息 sudo docker info Containers: 0 Images: 5 Storage Driver: devicemapp ...

  3. MVC5的AuthorizeAttribute详解

    现今大多数的网站尤其是购物网站都要求你登录后才能继续操作,当你匿名的将商品放入购物车后,不可能匿名购买这时可以转到登录界面让用户进行登录验证. 适用系统自带的过滤器 MVC5只要将属性[Authori ...

  4. Yii2 advanced版API接口开发 基于RESTful架构的 配置、实现、测试

    参考地址: http://www.xiaoxiangzi.com/Programme/PHP/3348.html http://www.cnblogs.com/ganiks/p/yii2-restfu ...

  5. 浅谈JavaScript中闭包

    引言 闭包可以说是JavaScript中最有特色的一个地方,很好的理解闭包是更深层次的学习JavaScript的基础.这篇文章我们就来简单的谈下JavaScript下的闭包. 闭包是什么? 闭包是什么 ...

  6. 一些总结application和事务

    如果需要添加一个全局变量的话  放到application中,但是这个变量中的值要修改的话,必须重新设置application里的值,要不就得重启服务器. String SiteName = (Str ...

  7. C# ManualResetEvent和AutoResetEvent 使用笔记

    一.两者区别 1.ManualResetEvent 调用一次Set()后将允许恢复所有被阻塞线程.需手动在调用WaitOne()之后调用Reset()重置信号量状态为非终止,然后再次调用WaitOne ...

  8. C#List的排序和简单去重总结

    List集合在开发过程中很常见,经常我们要对该集合进行一系列操作,本文介绍如何将该集合内的元素进行排序,博主制作简单WinForm应用程序进行演示. 首先,我们来看一下c#泛型List提供的Sort方 ...

  9. android自定义控件(5)-实现ViewPager效果

    对于系统的ViewGroup我们已经是十分熟悉了,最常用的LinearLayout和RelativeLayout几乎是天天要打交道,下面我们就来看看,如何一步一步将其实现: 一.首先当然也是最通常的新 ...

  10. [工具]Swagger-api接口文档描述

    摘要 工作中经常的用到webapi,之前都是提供的使用postman模拟请求的截图,非常的不方便,如果能在项目中集成一个在线查看接口说明的地方,肯定更方便更直观.在网上看到swagger这个组件,界面 ...