Dark Lord of the Sith
Joined: 10 May 2003
Location: Outer Space
|Posted: Wed Aug 09, 2006 5:55 pm Post subject: Binary and source RPMs for gtkhtml2 in SuSE 9.0
|GtkHTML is a HTML rendering/editing library. It is not designed to be the ultimate HTML browser/editor; instead, it is designed to be easily embedded into applications that require lightweight HTML functionality. Many programs that use GTK+, like the MySQl Query Browser, need a package called "gtkhtml2". As it turns out, compiling gtkhtml is not a picnic: dozens of dependencies will test your nerves to the utmost.
To save you all the trouble, I have created binary and source RPM packages for gtkhtml2 and 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.
For those of you interested in the gory details, here they are (if you don't care, don't worry - the spec file will duly remind you of all of them, one by one ):
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:
First, you will need a newer gtk2 package, but you will not be 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 you will have to use my gtk2 RPM package for gtk 2.6.4 and SuSE 9.0. Install both gtk2 and gtk2-devel.
Further down the road, I had to install (or upgrade) 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)
- libglade2-doc-2.5.1-6.i586.rpm (optional, but recommended)
- libgnomeprint-doc-2.10.1-5.i586.rpm (optional, but recommended)
- gail-doc-1.8.2-4.i586.rpm (optional, but recommended)
- glib2-doc-2.6.3-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.
Also, the compilation process will not force you to upgrade the libgnomeprintui-* packages. However, you should probably do it, since you have to upgrade the libgnomeprint-* packages.
To compile gtkhtml2 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 gtkhtml2:
You should also make sure that your installed versions satisfy the following minimum version requirements:
- gtk2 >= 2.2.0
- libgnomeui >= 1.112.1
- libgnomeprint >= 2.8.0
- libgnomeprintui >= 2.2.1
- libglade2 >= 2.0.0
- libsoup >= 2.1.6
- gail >= 0.13
- gnome-icon-theme >= 1.2.0
Install these, take care to upgrade the ones I showed you above with those from a SuSE 9.3 DVD, have an eye on the minimum version requirements and you should up and running fine! Enjoy!