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

[rhn-users] howto fix dead keys on Enterprise Linux 2.1 and Redhat 7.2 KDE

Both Redhat Enterprise Linux 2.1 (RHEL) and Redhat 7.2 have a bug
in KDE. The dead keys on Europena keyboards do not work.

In December 2001, the Canadian user Simon Perreault solved for problem
for me by sending me a specially compiled version of the qt-rpm, for
Redhat 7.2.

A few days ago I updated this machine to RHEL, as a test box for evaluation of Redhat Enterprise Linux.

The same probelm appeared again. The dead keys on my Swiss-german keyboard do not work under KDE.

I want to share the solution of this problem, which was communicated to me by Simon, with the community.

Forgive me if I provide detailed step-by-step instructions. I would have
found those useful, had I found them in the usenet myself.

What are dead keys:
European languages use accented characters of various kinds, e.g.
Umlauts (vowels with two dots on top), vowels with acute, grave and circumflex accents.
There are not enough keys on any keyboard to have a key for each possible accented character. Therefore, many accented characters are 'composed' by pressing two keys in sequence. the first is a 'dead key' which contains only the accent - when you press it, nothing appears on the screen. Only when the second key, e.g. the letter 'a' is pressed, the accented ä or ã or à or á appears.

The problem in Redhat's KDE:
RHEL and redhat 7.2 contain a relatively old version of KDE, 2.2.2.
KDE is based on the qt library, and Redhat uses QT version 2.3.1-5.
The bug which disables the dead keys resides in Redhat's patches
to this qt library, which were added for support of Japanese.

How to fix the problem: ------------------------- You need to rebuild the qt library.

1. get the source rpm from redhat: qt-2.3.1-5.src.rpm and install
it (with the usual command: rpm -Uvh qt-2.3.1-5.src.rpm)
This installes the source files in /usr/src/redhat

2. go to /usr/src/redhat/SPECS and find there the file qt.spec
Make a backup copy, and then edit the file qt.spec
Find the line which starts with Patch50.
There are five such lines, beginning with Patch50: .. Patch54:.
Turn them into comments by insertin the character # at the begin of the line.
Find the lines beginning with the word 'patch50' (lower case instead of upper case P).
There are gain five such lines, patch50 .. patch54. Turn them into comments as well.

3. compile the new rpm, with the command (while you are still in the
SPECS directory):
rpm -ba qt.spec
Depending on the version of RPM, you might need to do:
rpm-build -ba qt.spec
On my test box which has only a 600 Mhz Pentium III, it took several hours to compile. Got out to have a beer.

4. install the new rpm binary
You find a set of newly built rpm binaries in /usr/src/redhat/RPMS/i386.
I checked which ones where currently installed, with: rpm -qa|grep qt
I found that these were installed:

To update them with the new compiled version, use
rpm -Uvh --force qt-2.3.1-5.i386.rpm qt-devel-2.3.1-5.i386.rpm qt-designer-2.3.1-5.i386

5. restart KDE and find that the dead keys now are working.

Thanks to Simon for his great help!

-- || Alois Treindl, Astrodienst AG, mailto:alois astro com || Zollikon/Zurich, Switzerland || Free astrological charts at http://www.astro.com/ || SWISS EPHEMERIS Free Edition at http://www.astro.com/swisseph/

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