我想将 fontconfig 更新到较新的版本,但似乎操作系统仍在寻找旧的 fontconfig,我需要较新的版本来构建 qt。如何让 Red Hat 5.3 看到更新的版本?我不知道这是否有帮助,但是当我搜索 fontconfig 时,我在一个名为 cache 的文件夹中找到了一些文件。当我执行 yum update 时,它告诉我一切都是最新的,但是那个版本太旧并且缺少 FcFreeTypeQueryFace。如果这是错误的站点并且我会更改它,请给我发送评论。
问问题
4722 次
2 回答
6
如果您在 RHEL 或 CentOS 5.x 下收到此错误:
/home/esutton/qtsdk-2010.02/qt/lib/libQtGui.so: undefined reference to `FcFreeTypeQueryFace'
collect2: ld returned 1 exit status
显然 libQtGui.so 尝试使用 libfontconfig `FcFreeTypeQueryFace' 方法失败。在 2.4.2 版之前,它要么不存在,要么签名在 2.4.2 版中已更改。不确定是哪个,但需要将更新版本安装到:'''/usr/lib/libfontconfig.so.1'''
怎么修
下载源代码并配置安装在它期望找到它的位置:
cd /usr/src
wget http://fontconfig.org/release/fontconfig-2.4.2.tar.gz
tar -zxf fontconfig-2.4.2.tar.gz
cd fontconfig-2.4.2
./configure -prefix=/usr
make
make install <- Run as root or use sudo
完成此操作后,您无需将 fontconfig 库位置添加到 Qt 项目的 .pro 文件中。
LIBS += -L/opt/fontconfig-2.4.2/lib
这在 RHEL 5.3 上对我有用。我希望这有帮助!
-埃德
于 2010-03-26T13:04:54.337 回答
1
你需要要么
- 找到一个 rpm,也许是一个非 Red Hat 特定的,具有更新版本的 fontconfig 并安装它。例如,尝试rpm.pbone.net。
或者
- 或者,获取源代码并自行构建和安装。如果您的系统上有依赖于现有 fontconfig rpm 的软件,那么您将无法卸载 yum 为您提供的版本。如果是这种情况,那么不要打扰构建过程的安装部分,只需构建它并将其留在原处即可。然后,您必须确保本地构建版本的路径是编译 Qt 时使用的路径。我并不是说所有这些都会奏效,但如果没有 rpm 选项,这就是我自己的目标。
于 2010-03-19T20:48:48.697 回答