如何使用 wine 安装 lfreetype?

如何使用 wine 安装 lfreetype?

我正在使用 Ubuntu 11.10 64 位并尝试安装 wine 1.5,使用这种方法:

在 Ubuntu 上安装 Wine:

sudo apt-get install libfreetype6-dev gobject* libxrender-dev libfontconfig-dev pthread* libpthread-stubs0-dev xext* libsm-dev

并在终端中复制以下命令:

wget http://prdownloads.sourceforge.net/wine/wine-1.5.0.tar.bz2
tar -xjvf wine-1.5.0.tar.bz2
cd wine-1.5.0

安装一些软件包:

sudo apt-get install flex bison qt3-dev-tools qt4-qmake
./configure
cd tools
./wineinstall

一切顺利,但最后我收到此错误消息:

checking for -lfreetype... not found
configure: error: FreeType 32-bit development files not found. Fonts will not be built. 
Use the --without-freetype option if you really want this.

有人知道如何安装 lfreetype 吗?

答案1

它抱怨缺少 freetype 的 32 位开发包。
您可以尝试安装它sudo apt-get install libfreetype6-dev:i386,看看警告是否消失。

答案2

进入您已提取 wine 文件的目录。

在终端中运行此命令:

./configure --without-freetype

然后完全完成后运行:

make

答案3

恢复以下内容修补从你的源代码树中再次编译:

From a37f74f5adec8cd3f924fc96e083a66219086091 Mon Sep 17 00:00:00 2001
From: Nicolas Le Cam <[email protected]>
Date: Sat, 7 Apr 2012 22:46:58 +0200
Subject: [PATCH] configure.ac: Prefer pkg-config over freetype-config.

---
 configure    | 16 +++++++++++-----
 configure.ac | 14 ++++++++++----
 2 files changed, 21 insertions(+), 9 deletions(-)

diff --git a/configure b/configure
index 3e6e777..5b0dcba 100755
--- a/configure
+++ b/configure
@@ -10262,7 +10262,12 @@ fi

 if test "x$with_freetype" != "xno"
 then
-    for ac_prog in freetype-config freetype2-config
+    if test "$PKG_CONFIG" != "false"
+    then
+        ac_freetype_incl="`$PKG_CONFIG --cflags freetype2 2>/dev/null`"
+        ac_freetype_libs="`$PKG_CONFIG --libs freetype2 2>/dev/null`"
+    else
+        for ac_prog in freetype-config freetype2-config
 do
   # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
@@ -10305,10 +10310,11 @@ fi
 done
 test -n "$ft_devel" || ft_devel="no"

-    if test "$ft_devel" != "no"
-    then
-        ac_freetype_incl=`$ft_devel --cflags`
-        ac_freetype_libs=`$ft_devel --libs`
+        if test "$ft_devel" != "no"
+        then
+            ac_freetype_incl=`$ft_devel --cflags`
+            ac_freetype_libs=`$ft_devel --libs`
+        fi
     fi
     ac_freetype_libs=${ac_freetype_libs:-"-lfreetype"}
     { $as_echo "$as_me:${as_lineno-$LINENO}: checking for -lfreetype" >&5
diff --git a/configure.ac b/configure.ac
index 667d725..a57f133 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1384,11 +1384,17 @@ WINE_NOTICE_WITH(cms,[test "$ac_cv_lib_lcms_cmsOpenProfileFromFile" != "yes"],
 dnl **** Check for FreeType 2 ****
 if test "x$with_freetype" != "xno"
 then
-    AC_CHECK_PROGS(ft_devel,[freetype-config freetype2-config],no)
-    if test "$ft_devel" != "no"
+    if test "$PKG_CONFIG" != "false"
     then
-        ac_freetype_incl=`$ft_devel --cflags`
-        ac_freetype_libs=`$ft_devel --libs`
+        ac_freetype_incl="`$PKG_CONFIG --cflags freetype2 2>/dev/null`"
+        ac_freetype_libs="`$PKG_CONFIG --libs freetype2 2>/dev/null`"
+    else
+        AC_CHECK_PROGS(ft_devel,[freetype-config freetype2-config],no)
+        if test "$ft_devel" != "no"
+        then
+            ac_freetype_incl=`$ft_devel --cflags`
+            ac_freetype_libs=`$ft_devel --libs`
+        fi
     fi
     ac_freetype_libs=${ac_freetype_libs:-"-lfreetype"}
     WINE_CHECK_SONAME(freetype,FT_Init_FreeType,[ft_lib=yes],[ft_lib=no],[$ac_freetype_libs])
-- 
2.1.4

答案4

只需安装默认libfreetype6-dev, 和libfreetype6:i386,接下来为该库创建一个链接。

sudo ln -s /usr/lib/i386-linux-gnu/libfreetype.so.6 /usr/lib/i386-linux-gnu/libfreetype.so

由于未知原因,我的一台电脑出现了问题,配置告诉一个错误libfreetype6但实际上不管怎样,你都可以用同样的方式解决问题

sudo apt-get install libpng12-0-dev libpng12-0:i386 zlib1g-dev zlib1g:i386
sudo ln -s /usr/lib/i386-linux-gnu/libpng12.so.0 /usr/lib/i386-linux-gnu/libpng12.so
sudo ln -s /usr/lib/i386-linux-gnu/libz.so.1.2.8 /usr/lib/i386-linux-gnu/libz.so

通用方法解决类似问题的方法:打开config.log文件,转到末尾,然后向上搜索单词error。您将找到用于测试库或标题是否存在的代码。只需复制主要的函数包括放到一个单独的文件中;接下来在代码上方查找用于编译的命令。它看起来像

gcc -m32 -o conftest -g -O2 -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=0   conftest.c  >&5

删除该>&5部分,写入conftest.c测试文件的名称(您刚刚复制了代码),并尝试使用此命令进行编译 — 您将看到更有用的错误消息。这基本上是最小的测试用例,一旦解决了它,问题也就解决了。

可能出现的错误提示:

  • 缺少标题 — 只需转到packages.ubuntu.com,并搜索标头名称以查找缺少的包
  • 缺少库 — 使用 postfix 安装库-dev,如果不起作用,则使用:i386。如果再次不起作用,就像自由类型库,然后采用上面写的解决方案 — 即手动创建符号链接。

相关内容