Re: hardcoded dependencies problem with building/installing GTK+



Hi Tor,
 
I downloaded jpeg-7 (I had jpeg-6b) and it honors DESTDIR. So the libraries got built finally!!!
 
There is one final issue, using "make install DESTDIR", some files are not generated.
 
1. gdk-pixbuf.loaders
2. gtk.immodules
3. pango.modules
4. fonts.cache
 
I noticed errors referring to 1 and 3 when trying to launch my application. grep for "Warning" in the build logs revealed 2 and 4. There are similar warning messages saying:
 
*** Warning: <blah_blah> not built
***
*** Generate this file manually on host
*** system using <so-and-so>
***
 
For 1-3, I manually ran <so-and-so> on the build host and redirect the output to <blah_blah> and then move them to the appropriate directories under /runtime/prefix.
 
For 4, I got the errors "failed to write cache" when trying to run the <so-and-so> (fc-cache here). It feels like it's trying to write under /runtime/prefix.
 
 ../../../bin/fc-cache -s -f -v
/usr/share/fonts: caching, new cache contents: 0 fonts, 6 dirs
/usr/share/fonts: failed to write cache
/usr/share/fonts/bitmap-fonts: caching, new cache contents: 32 fonts, 0 dirs
/usr/share/fonts/bitmap-fonts: failed to write cache
/usr/share/fonts/bitstream-vera: caching, new cache contents: 10 fonts, 0 dirs
/usr/share/fonts/bitstream-vera: failed to write cache
/usr/share/fonts/default: caching, new cache contents: 0 fonts, 2 dirs
/usr/share/fonts/default: failed to write cache
/usr/share/fonts/default/Type1: caching, new cache contents: 35 fonts, 0 dirs
/usr/share/fonts/default/Type1: failed to write cache
/usr/share/fonts/default/ghostscript: caching, new cache contents: 17 fonts, 0 dirs
/usr/share/fonts/default/ghostscript: failed to write cache
/usr/share/fonts/liberation: caching, new cache contents: 12 fonts, 0 dirs
/usr/share/fonts/liberation: failed to write cache
/usr/share/fonts/monotype: caching, new cache contents: 12 fonts, 0 dirs
/usr/share/fonts/monotype: failed to write cache
/usr/share/fonts/openoffice: caching, new cache contents: 1 fonts, 0 dirs
/usr/share/fonts/openoffice: failed to write cache
/usr/X11R6/lib/X11/fonts: caching, new cache contents: 0 fonts, 10 dirs
/usr/X11R6/lib/X11/fonts: failed to write cache
/usr/X11R6/lib/X11/fonts/100dpi: caching, new cache contents: 398 fonts, 0 dirs
/usr/X11R6/lib/X11/fonts/100dpi: failed to write cache
/usr/X11R6/lib/X11/fonts/75dpi: caching, new cache contents: 398 fonts, 0 dirs
/usr/X11R6/lib/X11/fonts/75dpi: failed to write cache
/usr/X11R6/lib/X11/fonts/CID: caching, new cache contents: 0 fonts, 0 dirs
/usr/X11R6/lib/X11/fonts/CID: failed to write cache
/usr/X11R6/lib/X11/fonts/OTF: caching, new cache contents: 0 fonts, 0 dirs
/usr/X11R6/lib/X11/fonts/OTF: failed to write cache
/usr/X11R6/lib/X11/fonts/TTF: caching, new cache contents: 12 fonts, 0 dirs
/usr/X11R6/lib/X11/fonts/TTF: failed to write cache
/usr/X11R6/lib/X11/fonts/Type1: caching, new cache contents: 29 fonts, 0 dirs
/usr/X11R6/lib/X11/fonts/Type1: failed to write cache
/usr/X11R6/lib/X11/fonts/encodings: caching, new cache contents: 0 fonts, 1 dirs
/usr/X11R6/lib/X11/fonts/encodings: failed to write cache
/usr/X11R6/lib/X11/fonts/encodings/large: caching, new cache contents: 0 fonts, 0 dirs
/usr/X11R6/lib/X11/fonts/encodings/large: failed to write cache
/usr/X11R6/lib/X11/fonts/local: caching, new cache contents: 0 fonts, 0 dirs
/usr/X11R6/lib/X11/fonts/local: failed to write cache
/usr/X11R6/lib/X11/fonts/misc: caching, new cache contents: 59 fonts, 0 dirs
/usr/X11R6/lib/X11/fonts/misc: failed to write cache
/usr/X11R6/lib/X11/fonts/util: caching, new cache contents: 0 fonts, 0 dirs
/usr/X11R6/lib/X11/fonts/util: failed to write cache
/auto/surf/lib/GTK/v2.16.4/var/cache/fontconfig: not cleaning unwritable cache directory
 
I was able to launch my application without the font cache. But I suspect it would impact my application's performance. Any more hints on solving the fonts.cache issue?
 
I also wanted to confirm if manually generate 1-4 the expected outcome of using DESTDIR.
 
Thanks
Maggie

On Thu, Aug 20, 2009 at 8:03 AM, Qing Men <maggie eclipse gmail com> wrote:
Now I get it. So each package has to be copied to the /runtime/prefix before building next one.
 
This left just one package (jpeg) which does not seem to honor DESTDIR.
 
Thanks
Maggie

On Thu, Aug 20, 2009 at 2:39 AM, Tor Lillqvist <tml iki fi> wrote:
> However, when I was about to build ATK using the "configure" line as below:

>> 'CFLAGS=-I/tmp/runtime/prefix/include/glib-2.0
>> -I/tmp/runtime/prefix/lib/glib-2.0/include'

When I said that software installed with DESTDIR can not be run
correctly from there, I should have added that it presumably can't be
used from there as a dependency when compiling something else either.
After installing glib using DESTDIR=/tmp into /tmp/runtime/prefix you
need to make sure its headers, libraries etc then are copied into (or
in some other way appear at) their real destination, /runtime/prefix ,
before you can compile something (like ATK) that requires them. Then
you won't need to pass any CFLAGS pointing to those include
directories as above, the ATK build will figure it out automatically
using glib's pkg-config data.

--tml




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]