Masanori Sekino wrote:
>gtk+ (=1.2.10-10) package provides two symlinks, `gdk -> gtk-1.2/gdk' 
>and `gtk -> gtk-1.2/gtk'. But they break many GNOME2 package's 
>compilation, so I'd like to remove them.

Masanori,

I've been working on Gnome 2 as well, so that I could get Nautilus working. I'm 
running into this same problem with libbonoboui2. The Gnome 2 packages all add 
'-I/sw/include/gtk-2.0 -I/sw/lib/gtk-2.0/include', so theoretically '#include 
<gtk/gtk.h>' should work.

However, pangoxft needs freetype2, and `freetype-config --cflags` has -I/sw/include in 
it. The .pc (pkgconfig) file for libgnomecanvas2 puts pango before gtk+-2.0 in the 
Depends: field, so `pkg-config --cflags libgnomecanvas-2.0` puts -I/sw/include before 
-I/sw/include/gtk-2.0. This makes <gtk/gtk.h> resolve to /sw/include/gtk-1.2/gtk.h  
instead of the gtk 2.0 version, and that's where the problem lies.

There are several possible fixes:

1) Patch the libgnomecanvas2 .pc file so that gtk+-2.0 is at the front. This is an 
easy fix, and I have verified that this puts -I/sw/include/gtk-2.0 before 
-I/sw/include in libgnomecanvas's cflags, but there is no guarantee that other 
packages won't also put pango first in the Depends field.

2) Prevent -I/sw/include from being added to pango's cflags. This is also easy, and is 
great because it will ensure that -I/sw/include will never be placed before 
-I/sw/include/gtk-2.0. However, this may break packages that use NoSetCPPFLAGS if they 
still need to include stuff from /sw/include.

3) Remove the /sw/include/gtk symlink. This is not so easy, it could cause many 
problems, but may be necessary.


By the way, here are the Gnome 2 packages I have finished (well at least they compile) 
or am working on:

Updated:
bonobo-activation2-1.0.0
gconf2-1.1.11
gnome-vfs2(-ssl)-1.9.17
libbonobo2-2.0.0
libglade2-2.0.0
libgnomecanvas2-2.0.0
linc1-0.5.0
orbit2-2.4.0

New:
eel2-0.2.27
gail15-0.15.1
libbonoboui2-2.0.0
libgnome2-2.0.0
libgnomeui2-2.0.0
nautilus-1.1.19

A couple of these packages use a very effective fix I came up with to solve the 
problems some packages have when upgraded. It stops programs from linking to 
already-installed versions of a library, instead of the upgraded version in 
/sw/src/%n/.

Please contact me so we can coordinate our efforts.

Dave Vasilevsky

_______________________________________________________________

Sponsored by:
ThinkGeek at http://www.ThinkGeek.com/
_______________________________________________
Fink-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/fink-devel

Reply via email to