diff --git a/drd/docs/drd-manual.xml b/drd/docs/drd-manual.xml index 22485c02d..f6ac6ddf3 100644 --- a/drd/docs/drd-manual.xml +++ b/drd/docs/drd-manual.xml @@ -989,6 +989,46 @@ before Valgrind's header files are present. + +Debugging GNOME Programs With DRD + + +GNOME applications use the threading primitives provided by the +glib library. This library is built +on top of POSIX threads, and is hence directly supported by DRD. + + + + + + +Debugging Qt Programs With DRD + + +The Qt library is the GUI library used by the KDE project. Currently +there are two versions of the Qt library in use: Qt3 by KDE 3 and Qt4 +by KDE 4. If possible, use Qt4 instead of Qt3. Qt3 is no longer +supported, and there are known problems with multithreading support in +Qt3. As an example, using QString objects in more than one thread will +trigger race reports (this has been confirmed by Trolltech -- see also +Trolltech task #206152). + + + +Qt4 applications are supported by DRD, but only if the +libqt4-debuginfo package has been installed. Some +of the synchronization and threading primitives in Qt4 bypass the +POSIX threads library, and DRD can only intercept these if symbol +information for the Qt4 library is available. DRD won't tell you if it +has not been able to load the Qt4 debug information, but a huge number +of data races will be reported on data protected via +QMutex objects. + + + + + Debugging OpenMP Programs With DRD