Dark Lord of the Sith
Joined: 10 May 2003
Location: Outer Space
|Posted: Wed Aug 09, 2006 10:18 am Post subject: Binary and source RPM packages for GTK+ (gtk2) in SuSE 9.0
|GTK+ is a multi-platform toolkit for creating graphical user interfaces. Offering a complete set of widgets, GTK+ is suitable for projects ranging from small one-off projects to complete application suites.
GTK+ is free software and part of the GNU Project. However, the licensing terms for GTK+, the GNU LGPL, allow it to be used by all developers, including those developing proprietary software, without any license fees or royalties.
GTK+ is a fast and versatile library is used all over the world for all GNOME applications, the GIMP, and several others. Originally it was written for the GIMP and hence has the name Gimp ToolKit. Many people like it because it is small, efficient, and very configurable.
"gtk2" is the package name for GTK+ version 2 in SuSE. For GTK 2.6.4, I have created binary and source RPM packages for SuSE 9.0:
Use the command
to install the binary RPMs. I used the build package of SuSE to compile my own source RPMs from source, as described for example in Compiling SuSE Source Packages. Note that up to and including version 9.0, SuSE uses the usedforbuild string on a comment line of the spec file to list all needed files for a successful compilation of the package.
The packages are build for SuSE 9.0. To rebuild a package for your own version of (SuSE) Linux, use the source RPMs and the build and/or rpmbuild commands, as described in How to compile an older version for a newer system in RPM.
Some notes on required packages, please read carefully:
As I am using a fairly old SuSE installation (SuSE 9.0), it was clear that some needed packages would be outdated. The solution I chose was to install them from a SuSE 9.3 DVD with the above command:
rpm -Uhv /path-to-DVD/suse/i586/xxx.rpm
Here are some of the obstacles I encountered during compilation:
For one, I was not able to install gtk2-2.6.4-6 directly from the SuSE 9.3 DVD (that would be the easiest option, as you may already have guessed, but...):
rpm -Uhv /cdrw/suse/i586/gtk2-2.6.4-6.i586.rpm
error: Failed dependencies:
libXfixes.so.3 is needed by gtk2-2.6.4-6
libXinerama.so.1 is needed by gtk2-2.6.4-6
gtk2 = 2.2.3 is needed by (installed) gtk2-devel-2.2.3-27
(from now, on, /cdrw will be the location of my CD-RW drive). So I tried to find which package provided libXfixes.so.3 and libXinerama.so.1. As it turned out, after a search on the Net, they are both provided by xorg-x11-libs-xxx. But I am not using Xorg! I use XFree86 - remember, this is still SuSE 9.0...
So there was no other alternative than to compile the package myself.
Further down the road, I had to install the following packages from the SuSE 9.3 DVD:
- freetype2-2.1.9-4.i586.rpm (optional, but recommended)
- freetype2-devel-2.1.9-4.i586.rpm (optional, but recommended)
- glib2-doc-2.6.3-4.i586.rpm (optional, but recommended)
- pango-doc-1.8.1-4.i586.rpm (optional, but recommended)
The freetype2 packages need not be updated, strictly speaking. However you are going to get a harsh warning (and a refusal to run!) from GIMP, if you compile, install and try to run it with the SuSE 9.0 freetype2 version. So better upgrade it right now.
To compile gtk2 on a SuSE 9.0 system, you need a "base Linux system" comprising of the following packages:
AND also the following "extra packages", needed specifically by gtk2:
Install these, take care to upgrade the ones I showed you above with those from a SuSE 9.3 DVD and you should up and running fine! Enjoy!
PS.: Of course, you might ask why on earth go into that trouble and not upgrade the system completely? Well, because, in my case, each time I upgrade my SuSE system I get 80 (eighty!) emails telling me that I have to look at my old configuration file, which was saved with the .rpmsave or .rpmold ending, and copy any special changes to the new one. It usually takes me 2-3 weeks *full time* to iron all this out. Compare this to the 2 days it cost me to upgrade GTK2. So if you are asking such questions, you are probably not using your computer for more than letter writing and surfing...