mac osx wine 1.7.5 源码编译方法及中文乱码的解决

源码编译

1、先安装apple-gcc42,Mac osx自带的 llvm-gcc,编译后,无法运行wine。


1

sudo port install apple-gcc42

2、下载wine源码


1

2

git clone git://source.winehq.org/git/wine.git ~/wine-git

cd ~/wine-git

3、安装 X11/XQuartz ,官网下载 XQuartz

4、我是用的是1.7.5编译的


1

git checkout -b 1.7.5 wine-1.7.5

5、切换编译工具为 apple-gcc42


1

2

sudo port select gcc apple-gcc42

hash gcc

如果想恢复苹果默认的llvm-gcc:


1

2

sudo port select gcc none

hash gcc

6、编译源码


1

2

./configure --verbose --x-includes=/usr/X11/include --x-libraries=/usr/X11/lib

make

7、安装


1

2

3

4

make install

# 卸载

make uninstall

中文乱码解决

1、参考下面的文章:

http://linfan.info/blog/2012/03/01/wine-mac/

字体最好是用 SimSun.ttc,宋体,可以从windows 中提取。

2、通过以上注册表中的方式,仍然会存在乱码,是字符集的问题,可以参考下面文章:

http://forum.ubuntu.org.cn/viewtopic.php?t=291611&p=2719632

dlls/gdi32/freetype.c b/dlls/gdi32/freetype.c 源码中添加一句,最新源码中的位置有所变化,如下:


1

2

3

4

5

6

7

8

9

10

11

diff --git a/dlls/gdi32/freetype.c b/dlls/gdi32/freetype.c

index fb4f2af..5bc1393 100644

--- a/dlls/gdi32/freetype.c

+++ b/dlls/gdi32/freetype.c

@@ -5073,6 +5073,7 @@ static HFONT freetype_SelectFont( PHYSDEV dev, HFONT hfont, UINT *aa_flags )

     GetObjectW( hfont, sizeof(lf), &lf );

     lf.lfWidth = abs(lf.lfWidth);

+    lf.lfCharSet = GetTextCharset(dc);

     can_use_bitmap = GetDeviceCaps(dev->hdc, TEXTCAPS) & TC_RA_ABLE;

通过以上努力,基本可以解决乱码问题,当仍会有部分字体乱码,主要原因是相关程序的字体,无法找到,如果知道程序使用的字体,可以通过 #1 中提到的注册表的方式,添加。

欢迎转载:http://www.yinqisen.cn/blog-293.html

时间: 2024-10-24 05:26:36

mac osx wine 1.7.5 源码编译方法及中文乱码的解决的相关文章

源码编译安装 PHP5.5.0,解决curl_exec访问HTTPS返回502错误的问题

最近碰到一个奇怪的问题, PHP使用 curl_exec 访问 HTTPS 网页时, 返回502错误, 访问HTTP网页时没有问题,  用   echo   phpinfo() ;  查看, 支持openssl, 支持curl, 网上找了好多资料, 都没解决. [[email protected] ~]# php -V Failed loading /usr/local/zend/ZendOptimizer.so: /usr/local/zend/ZendOptimizer.so: undefi

源码编译安装 PHP5.5.0,解决curl_exec访问HTTPS返回502错误的问题(修改PATH路径)

最近碰到一个奇怪的问题, PHP使用 curl_exec 访问 HTTPS 网页时, 返回502错误, 访问HTTP网页时没有问题,  用   echo   phpinfo() ;  查看, 支持openssl, 支持curl, 网上找了好多资料, 都没解决. [plain] view plain copy [[email protected] ~]# php -V Failed loading /usr/local/zend/ZendOptimizer.so:  /usr/local/zend

在Mac OS X中下载Android源码的一些经验

首先说明,随着近期(2014年6月开始)GFW的升级,这个网站:http://www.android.com/ 已经不能正常访问了,下面的这些操作均是在我连接VPN的时候进行的. 首先,需要做一些准备工作:据这里(http://source.android.com/source/initializing.html)介绍,Mac OS中文件系统的特点是:case-preserving but case-insensitive,也就是保留大小写,但对大小写不敏感,这样会给后续运行一些命令带来很多麻烦

【流媒体开发】VLC Media Player - Android 平台源码编译 与 二次开发详解 (提供详细800M下载好的编译源码及eclipse可调试播放器源码下载)

作者 : 韩曙亮  博客地址 : http://blog.csdn.net/shulianghan/article/details/42707293 转载请注明出处 : http://blog.csdn.net/shulianghan VLC 二次开发 视频教程 : http://edu.csdn.net/course/detail/355 博客总结 : -- 本博客目的 : 让 Android 开发者通过看本博客能够掌握独立移植 VLC Media Player 核心框架到自己的 app 中,

获取 + 查看 Android 源码的 方法

Android源码获取方法. 作为一个Android开发者,必要的时候阅读以下源码可以拓宽一下自己的视野和对android的认知程度. Google的Android的源码管理仓库是用的是Git.Android是一个开源手机终端系统,基于Linux内核的. 1.下载一个Git客户端,我使用的是Git-1.7.0.2版本 下载地址:http://code.google.com/p/msysgit/ 2.windows下安装Git的客户端软件很方便,和普通软件一样.安装完成后,我们在电脑上建立一个文件

zookeeper 源码编译

环境:mac 1.github上下载 源码 项目地址:https://github.com/apache/zookeeper 2.安装 ant mac:brew update ->  brew install ant ant -version 检查是否安装成功 3.cd zookeeper 文件夹, 执行 ant eclipse 4.idea 导入 eclipse 工程 原文地址:https://www.cnblogs.com/idea-persistence/p/9347736.html

源码编译MYSQL遇到的几个小问题

闲来无聊,顺手练习一下好久没碰过的MYSQL,于是决定源码编译安装MYSQL-5.7.11,练习不打紧,出了好多问题,于是乎赶紧在这里总结一下: 先下载的编译器:cmake-2.8.12.2-4.el6.x86_64.rpm   MYSQL源码包:mysql-boost-5.7.11.tar.gz 接下来进行配置,编译,安装三部曲:(区别是我把数据目录单独放在了另外一张虚拟硬盘上-DMYSQL_DATADIR=/mydata/data   -DMYSQL_UNIX_DATA=/mydata/da

马哥linux学习笔记:源码编译安装

由于rpm包在作者制作封装的时候已经把程序的一些特性固定了,如果我们根据自己的需求,需要运用程序的一些没有普适性相关特性,就需要下载程序的源码手动编译安装了,这里只是简单的介绍一下C代码的程序包编译安装方法. 为了能更直观的看到源码编译安装的过程,我演示一下在centos7.2环境中编译安装httpd2.2: 首先,编译的前提是得有称手的工具及环境了,编译c源代码就需要用到开发工具,make,gcc了,环境就需要开发库跟头文件了,如果系统中没有这些,就需要yum安装了. 这里我运行yum gro

烂泥:mysql5.0数据库源码编译安装

本文首发于烂泥行天下. 本次实验的mysql.OS相关信息如下: Mysql:5.0.96 OS:centos 32 bit 最近公司要上新的业务,指明数据库使用的是mysql5.0版本.如果是使用rpm包安装的话,那就很简单了.直接使用yum安装即可,命令如下: yum –y install mysql mysql-server Yum方式安装完毕后,直接启动mysql数据库服务即可.如下图: 这样基本上就可以了. 但是这样安装mysql数据库,没有进行定制.比如mysql数据库的数据文件存储