Subject: Kde 3.4 and fontconfig (NetBSD-3.99.1 i386)
To: None <tech-pkg@NetBSD.org>
From: Sverre Froyen <sverre@viewmark.com>
List: tech-pkg
Date: 03/27/2005 10:02:36
Hi,
With sources from 24 March, I did a complete recompile of the system
(including X) and Kde 3.4 (including sub-packages). Initially, Kde was
working OK although I did notice jaggedness in most fonts. I then ran
"fc-cache -f" (from /usr/pkg/bin) and after that, all characters
rendered as empty squares. Running "/usr/X11R6/bin/fc-cache -f"
corrected the rendering problem. I looks like fontconfig in X11R6 is
older that fontconfig in pkgsrc (libfontconfig.so.1.0 vs.
libfontconfig.so.1.0.4). The config files are also imcompatible. It
looks like most Kde applications are using libraries from
both /usr/pkg/lib and from /usr/X11R6/lib. For instance:
$ ldd /usr/pkg/bin/konsole
/usr/pkg/bin/konsole:
-lz.0 => /usr/lib/libz.so.0
-lm.0 => /usr/lib/libm387.so.0
-lm.0 => /usr/lib/libm.so.0
-lpng.3 => /usr/pkg/lib/libpng.so.3
-lGL.1 => /usr/pkg/lib/libGL.so.1
-lX11.6 => /usr/X11R6/lib/libX11.so.6
-lICE.6 => /usr/X11R6/lib/libICE.so.6
-lSM.6 => /usr/X11R6/lib/libSM.so.6
-lXt.6 => /usr/X11R6/lib/libXt.so.6
-lXext.6 => /usr/X11R6/lib/libXext.so.6
-lXmu.6 => /usr/X11R6/lib/libXmu.so.6
-lXrender.1 => /usr/pkg/lib/libXrender.so.1
-lXrandr.2 => /usr/pkg/lib/libXrandr.so.2
-lXfixes.0 => /usr/pkg/lib/libXfixes.so.0
-lXcursor.1 => /usr/pkg/lib/libXcursor.so.1
-lXinerama.1 => /usr/X11R6/lib/libXinerama.so.1
-lfreetype.6 => /usr/pkg/lib/libfreetype.so.6
-lexpat.0 => /usr/pkg/lib/libexpat.so.0
-lfontconfig.1 => /usr/pkg/lib/libfontconfig.so.1
-lXft.2 => /usr/pkg/lib/libXft.so.2
-lstdc++.5 => /usr/lib/libstdc++.so.5
-lgcc_s.1 => /usr/lib/libgcc_s.so.1
-lpthread.0 => /usr/lib/libpthread.so.0
-lqt-mt.3 => /usr/pkg/qt3/lib/libqt-mt.so.3
-lintl.0 => /usr/lib/libintl.so.0
-lDCOP.4 => /usr/pkg/lib/libDCOP.so.4
-lresolv.1 => /usr/lib/libresolv.so.1
-lutil.7 => /usr/lib/libutil.so.7
-lart_lgpl_2.2 => /usr/pkg/lib/libart_lgpl_2.so.2
-lkdefx.4 => /usr/pkg/lib/libkdefx.so.4
-lkdecore.4 => /usr/pkg/lib/libkdecore.so.4
-lkdeui.4 => /usr/pkg/lib/libkdeui.so.4
-lkdesu.4 => /usr/pkg/lib/libkdesu.so.4
-lkwalletclient.1 => /usr/pkg/lib/libkwalletclient.so.1
-lkio.4 => /usr/pkg/lib/libkio.so.4
-lkparts.2 => /usr/pkg/lib/libkparts.so.2
-lkdeprint.4 => /usr/pkg/lib/libkdeprint.so.4
-lXtst.6 => /usr/X11R6/lib/libXtst.so.6
-lkdeinit_konsole => /usr/pkg/lib/libkdeinit_konsole.so
-lGL.1 => /usr/X11R6/lib/libGL.so.1
-lXrender.1 => /usr/X11R6/lib/libXrender.so.1
-lXrandr.2 => /usr/X11R6/lib/libXrandr.so.2
-lXcursor.1 => /usr/X11R6/lib/libXcursor.so.1
-lXft.2 => /usr/X11R6/lib/libXft.so.2
-lfontconfig.1 => /usr/X11R6/lib/libfontconfig.so.1
-lc.12 => /usr/lib/libc.so.12
is referencing libfontconfig.so.1 in both places and the same for libXft
and libXrender. In an attempt to provide the applications with a
consistent fontconfig library, I copied the libfontconfig files
from /usr/pkg/lib to /usr/X11R6/lib (obviously a not very elegant
solution).
Questions:
Is my concern about applications using different versions of the same
library a non-issue (but notice the effect of running fc-cache)?
Is there a way to avoid this (besides copying from /usr/pkg/lib
to /usr/X11R6/lib)?
Is the jaggedness that I still observe related to this issue?
Thanks,
Sverre