The K Desktop Environment

Next Previous Table of Contents

8. Troubleshooting problems with KDE installation :

The following selection of problems and solutions is based on actual problems reported by users of the KDE-1.0 and KDE-1.1pre* RPM packages.

8.1 "I could not install the packages: rpm reports missing libraries"

Perhaps rpm issued error messages that kdesupport could not be installed because libjpeg, libgdbm, etc were missing.

This is because you have the previous KDE-1.0 "rh51" rpms installed, and kdesupport no longer provides support libraries that Red Hat also supplies. You must first uninstall the KDE-1.0 rpms with rpm -e ... . Red Hat 5.1 users will need the Red Hat libjpeg-6b and libungif rpm packages from the "jpeg" subdirectory of the Red Hat 5.1 updates section on Red Hat's ftp site.

8.2 "I installed KDE over an older version, and nothing works"

Some 1.1pre* KDE RPMS react badly with these when being updated. The necessary files /etc/profile.d/kde.sh, /etc/profile.d/kde.csh, or /etc/pam.d/kde may have got deleted when the older KDE RPMS were upgraded.

It is possible to repair this by copying the kde.sh and kde.csh files from /opt/kde/etc/profile.d (or its equivalent if you installed the RPMS to a different location than /opt/kde) to /etc/profile.d and making them executable by all ( chmod +a /etc/profile.d/kde.* ). Also cp -p /etc/pam.d/xdm /etc/pam.d/kde will restore the PAM configuration. A symbolic link from /opt/kde/redhat-docs to /usr/doc/KDE-1.1 may also be missing.

Hovever, the easiest (and best) fix is just to force reinstallation of the KDE base system:

rpm -Uvh --force kdesupport-1.1-*rh*.i386.rpm  
rpm -Uvh --force kdelibs-1.1-*rh*.i386.rpm
rpm -Uvh --force kdebase-1.1-*rh*.i386.rpm
Now login again, and rerun the kdm_on script if you are trying to make kdm work.

A different reason for this problem, particularly if it just affects a particular user, may be that the user's KDE configuration files are out of date. To check for this. the user should move their ~/.kderc, ~/.kde and ~/Desktop out of the way, rerun usekde, and try to start KDE again.

8.3 "I typed "startkde" and KDE did not start!"

This is not the way to start KDE. "startkde" is invoked by .Xclients as part of the X startup process. KDE should start when an X Window section is opened, if you have previously run the "usekde" script to set up your KDE desktop..

8.4 "I typed "startx" and the X Window system would not start"

Delete or rename the .Xclients file in your home directory, and try "startx" again. If it does not work, this is not a KDE problem. (Did you really have a working X Window system that could be started by "startx" before installing KDE?)

If .Xclients.kdesave exists in your home directory, does moving this back to .Xclients make the X Window system work (without starting KDE)? If so, examine it to find out why. If .xinitrc.kdesave exists, try moving it back to .xinitrc and test this too, to see if any required customizations were placed there.

Are the scripts in the directory /etc/X11/xinit/ customized in some special way needed by your system? (Test for modifications to the Red Hat default scripts with "rpm -V xinitrc".) If so, reinstall .Xclients with "usekde", and add these customizations to it. If this solves the problem, you should customize the default .Xclients that usekde installs, as described in " Customizing the default Desktop".

If startx works when the .Xclients file is removed, shut down the X Window system, and reinstall .Xclients with "usekde". Check that .Xclients contains the single executable line "/opt/kde/bin/startx", and that "ls -l .Xclients" reports it as executable (the permissions should be "-rwxr-xr-x").

If .Xclients seems correct, but your problem persists, your problem may be the next one.

8.5 "KDE tries to start, but doesn't succeed".

Check that the "/" or "/home" partition of your hard disk is not full. KDE needs to write to some files to begin a session. ("df" will tell you the status of your various disk partitions).

Are there lots of error messages that various files are not being found? You may have installed an incompatible QT library (compiled with the wrong compiler, or old version, etc.). Check the QT installation with "rpm -q qt" and "rpm -V qt".

Verify (rpm -V) kdesupport, kdelibs, and kdebase. Did you install them in the correct order?. Check that /etc/ld.so.conf contains a line "/opt/kde/lib"; if not, add it and run "/sbin/ldconfig".

Check the KDEDIR environment variable with "echo $KDEDIR" (it should be "/opt/kde"); is /opt/kde/bin in your path (type "echo $PATH")? If not, examine your /etc/profile for any strange customizations, and remove them. Does /etc/bashrc or .bashrc contain anything strange (KDE related) that you put there to configure an older KDE installation (they should not refer to KDE)?

If no problems are apparent, completely remove the kde installation with "rpm -e kdexxxx" (xxxx = base, libs, etc. in the reverse order from installation), remove /opt/kde, and reinstall the RPM packages in the correct order. If this clean reinstallation does not work, post a description of your problem to the "kde-user" mailing list (see http://www.kde.org).

8.6 "xdm or kdm is running. I login, but some other window manager starts."

Check that you have a .Xclients hidden file in your home directory. Look at it with "cat ~/.Xclients". Does it invoke /opt/kde/bin/startkde? If not, (re)install the correct one by running "usekde".

If .Xclients seems OK, there is probably a .xsession file in your home directory that is running another window manager. Rename .xsession to some other name, so it will not preempt .Xclients. If this is not the problem, look at /etc/X11/xdm/Xsession to see if it has been customized in some non-standard way ("rpm -V XFree86" will report if it has been changed from the default).

8.7 "I run startx but some other window manager starts."

Check the .Xclients in your home directory, as described earlier. Is there a .xinitrc that preempts it? (rename it). Is /etc/X11/xinit/xinitrc customized in some strange way? ("rpm -V xinitrc" will show if it has been changed).

8.8 "kdm won't let me login".

This could be because the .Xclients in your home directory is corrupt or not executable. Check it as described earlier.

This could be because a file system is full. Check this with df.

This could be also a problem with /etc/pam.d/kde. Check if you can login using xdm instead.

If xdm works, you have a kdm problem. If /etc/pam.d/xdm and /etc/pam.d/kde are different, PAM has been customized; copy your /etc/pam.d/xdm to /etc/pam.d/kde, with cp -dp to preserve the permissions.

If xdm is not working, it is not a kdm problem, so get this fixed first. Note, to test xdm and kdm, it is best to switch to runlevel 3, with "telinit 3", and (as root) run xdm or kdm from the terminal.

8.9 "I can't shut down xdm or kdm"

You must be the superuser to do this. If you are in runlevel 5, shut the X Display Manager down with "telinit 3".

If the X Display Manager was started from the command line on a terminal screen, it can only be stopped by killing the process with "kill -INT <pid>" where <pid> is the Process ID number of the xdm or kdm which is running. This is written in /var/run/xdm.pid (for both xdm and kdm), so "cat /var/run/xdm.pid" will tell you what it is.

8.10 The "usekde" or "kdm_on" commands were not found

You are loggged in as root, and have just installed the RPM packages. You are attempting to run the usekde or kdm_on scripts before $PATH has been updated to include the directory with KDE executables. (You did not log in again after installing the kdebase RPM package.)

Either log in again now (recommended), or run the scripts with their full path: for example,

/opt/kde/bin/kdm_on

8.11 rpm version issues.

Some of the 2.5.x releases of rpm have a broken /usr/lib/rpmrc configuration file where the entry "gzipbin: /bin/gzip" is incorrectly given as "gzipbin: /usr/bin/gzip" (THIS IS WRONG, gzip is found in /bin/gzip). This will cause the rebuild process to fail when gzip is not found. A simple fix is to create a symbolic link: "ln -s ../../bin/gzip /usr/bin/gzip".

On Red Hat 4.2, RPM packages built with rpm-2.5.x are incompatible with earlier versions of rpm that shipped with the original distribution. Because of this, the KDE "rh42" RPM packages are built with the older version of rpm.

8.12 "host type not found" error messages when compiling KDE.

If you try to rebuild the KDE binary RPM packages from the source RPM packages, you may get an error message that the "host type" of your system could not be found.

This probably means that your compilers are not properly installed. If reinstalling the compilers (both gcc and egcs on Red Hat 5.x) does not fix this, here is another fix:

Create a file /opt/kde/share/config.site containing the line "host=i386-pc-linux" (or i586-pc-linux for a pentium, i686-pc-linux for a pentium-II). More information is in files README, INSTALL, and config.sub that are unpacked into /usr/src/redhat/BUILD/kde* during the rebuild process.

Next Previous Table of Contents