Tommy Zong wrote:
My centos is 4.8 while I need gtk 2.8 or later. How to upgrade GTK?
You can't without breaking everything. But you can install an alternative version alongside and make sure that only the programs that need it are using it (that means you _can't_ just install to /usr/local).
RH sometimes does this too. E.g. there are official packages for evolution 2.8 in the base repo:
evolution28-2.8.0-61.el4.x86_64 evolution28-atk-1.12.2-4.el4.x86_64 evolution28-atk-devel-1.12.2-4.el4.x86_64 evolution28-cairo-1.2.4-6.el4.x86_64 evolution28-cairo-devel-1.2.4-6.el4.x86_64 evolution28-devel-2.8.0-61.el4.x86_64 evolution28-evolution-connector-2.8.0-16.el4.x86_64 evolution28-evolution-data-server-1.8.0-37.el4_7.2.x86_64 evolution28-evolution-data-server-devel-1.8.0-37.el4_7.2.x86_64 evolution28-glib2-2.12.3-6.el4.x86_64 evolution28-glib2-devel-2.12.3-6.el4.x86_64 evolution28-gtk2-2.10.4-25.el4.x86_64 evolution28-gtk2-devel-2.10.4-25.el4.x86_64 evolution28-gtkhtml3-3.12.0-11.el4.x86_64 evolution28-gtkhtml3-devel-3.12.0-11.el4.x86_64 evolution28-libsoup-2.2.98-5.el4.1.x86_64 evolution28-libsoup-devel-2.2.98-5.el4.1.x86_64 evolution28-pango-1.14.9-13.el4_8.x86_64 evolution28-pango-devel-1.14.9-13.el4_8.x86_64
As you can see, devel packages are even included. Your best bet is to install all the above (includes gtk 2.10) and then compile your stuff with something like
env PKG_CONFIG_PATH=/usr/evolution28/lib64/pkgconfig:/usr/lib64/pkgconfig LDFLAGS="-Wl,-rpath -Wl,/usr/evolution28/lib64" ./configure
Hope this helps,
-Michael